/* Salsa Gatineau — Member Experience 0.1.0
   Tout est volontairement scopé sous body.sg-member-experience. */

body.sg-member-experience {
  --sg-red:#c51d25;
  --sg-red-dark:#99161c;
  --sg-black:#111214;
  --sg-charcoal:#1c1d20;
  --sg-ink:#202124;
  --sg-muted:#6b7280;
  --sg-line:#e6e7e9;
  --sg-soft:#f6f6f7;
  --sg-white:#fff;
  --sg-green:#16803a;
  --sg-green-soft:#f0fdf4;
  --sg-amber:#a16207;
  --sg-amber-soft:#fffbeb;
  --sg-radius:16px;
  --sg-shadow:0 12px 34px rgba(17,18,20,.08);
  background:#f5f5f6 !important;
  color:var(--sg-ink);
}

/* Ne jamais afficher les reliquats de configuration WPLMS sur le parcours client. */
body.sg-member-experience .sgme-hidden-theme-junk { display:none !important; }
body.sg-member-experience img[src*="wplms" i][alt*="wplms" i],
body.sg-member-experience img[alt="WPLMS" i] { display:none !important; }

/* Bandeau de contexte membre, inséré dans le contenu et non à la place du header du site. */
body.sg-member-experience .sgme-member-banner {
  width:min(1280px, calc(100% - 36px));
  margin:22px auto 0;
  padding:18px 22px;
  border-radius:18px;
  background:linear-gradient(135deg,var(--sg-black),#242529);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  box-shadow:var(--sg-shadow);
}
body.sg-member-experience .sgme-member-banner__eyebrow {
  font-size:11px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#d7d7da;
  margin-bottom:3px;
}
body.sg-member-experience .sgme-member-banner__title {
  font-size:clamp(20px,2.2vw,30px);
  line-height:1.1;
  font-weight:800;
  letter-spacing:-.02em;
}
body.sg-member-experience .sgme-member-banner__home {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:0 15px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:999px;
  color:#fff !important;
  text-decoration:none !important;
  font-weight:700;
  white-space:nowrap;
  background:rgba(255,255,255,.05);
}
body.sg-member-experience .sgme-member-banner__home:hover { background:#fff; color:var(--sg-black)!important; }

/* Conteneurs principaux WPLMS 4 / VibeBP / BuddyPress */
body.sg-member-experience #buddypress,
body.sg-member-experience .vibebp_main,
body.sg-member-experience .vibebp-main,
body.sg-member-experience .vibebp_profile,
body.sg-member-experience .vibebp-profile,
body.sg-member-experience .course_status,
body.sg-member-experience .course-status,
body.sg-member-experience .single-course-content,
body.sg-member-experience .course_content,
body.sg-member-experience .course-content {
  font-family:inherit;
}

body.sg-member-experience #buddypress,
body.sg-member-experience .vibebp_main,
body.sg-member-experience .vibebp-main {
  width:min(1280px, calc(100% - 36px));
  margin:22px auto 48px !important;
}

/* Navigation membre */
body.sg-member-experience #buddypress #item-nav,
body.sg-member-experience #buddypress #object-nav,
body.sg-member-experience .vibebp_main .vibebp_left_sidebar,
body.sg-member-experience .vibebp_main .vibebp-sidebar,
body.sg-member-experience .vibebp_main .profile_menu,
body.sg-member-experience .vibebp_main .profile-menu,
body.sg-member-experience .course_status .course_timeline,
body.sg-member-experience .course-status .course-timeline {
  background:var(--sg-black) !important;
  color:#fff !important;
  border:0 !important;
  border-radius:var(--sg-radius) !important;
  box-shadow:var(--sg-shadow);
}

body.sg-member-experience #buddypress #item-nav a,
body.sg-member-experience #buddypress #object-nav a,
body.sg-member-experience .vibebp_main .vibebp_left_sidebar a,
body.sg-member-experience .vibebp_main .vibebp-sidebar a,
body.sg-member-experience .vibebp_main .profile_menu a,
body.sg-member-experience .vibebp_main .profile-menu a {
  color:#e9e9eb !important;
  border-radius:10px;
  font-weight:650;
}
body.sg-member-experience #buddypress #item-nav .current a,
body.sg-member-experience #buddypress #object-nav .current a,
body.sg-member-experience #buddypress #item-nav .selected a,
body.sg-member-experience #buddypress #object-nav .selected a,
body.sg-member-experience .vibebp_main a.active,
body.sg-member-experience .vibebp_main li.active > a,
body.sg-member-experience .vibebp_main li.current > a {
  background:var(--sg-red) !important;
  color:#fff !important;
}

/* Cartes / zones de contenu */
body.sg-member-experience #buddypress #item-body,
body.sg-member-experience .vibebp_main .vibebp_right_sidebar,
body.sg-member-experience .vibebp_main .vibebp-content,
body.sg-member-experience .vibebp_main .profile_content,
body.sg-member-experience .vibebp_main .profile-content,
body.sg-member-experience .course_header,
body.sg-member-experience .course-header,
body.sg-member-experience .course_description,
body.sg-member-experience .course-description,
body.sg-member-experience .course_curriculum,
body.sg-member-experience .course-curriculum,
body.sg-member-experience .course_reviews,
body.sg-member-experience .course-reviews,
body.sg-member-experience .unit_content,
body.sg-member-experience .unit-content,
body.sg-member-experience .widget,
body.sg-member-experience .item-list > li,
body.sg-member-experience .activity-list > li {
  background:var(--sg-white) !important;
  border:1px solid var(--sg-line) !important;
  border-radius:var(--sg-radius) !important;
  box-shadow:0 6px 22px rgba(17,18,20,.045);
}

body.sg-member-experience #buddypress #item-body,
body.sg-member-experience .vibebp_main .vibebp-content,
body.sg-member-experience .vibebp_main .profile_content,
body.sg-member-experience .vibebp_main .profile-content {
  padding:clamp(18px,2.8vw,34px) !important;
}

/* En-têtes et identité */
body.sg-member-experience #buddypress #item-header,
body.sg-member-experience .vibebp_main .profile_header,
body.sg-member-experience .vibebp_main .profile-header {
  background:linear-gradient(135deg,#17181a,#2b2c30) !important;
  color:#fff !important;
  border-radius:var(--sg-radius) !important;
  overflow:hidden;
  box-shadow:var(--sg-shadow);
}
body.sg-member-experience #buddypress #item-header h2,
body.sg-member-experience #buddypress #item-header h2 a,
body.sg-member-experience .vibebp_main .profile_header h1,
body.sg-member-experience .vibebp_main .profile_header h2,
body.sg-member-experience .vibebp_main .profile-header h1,
body.sg-member-experience .vibebp_main .profile-header h2 { color:#fff !important; }

body.sg-member-experience .avatar,
body.sg-member-experience img.avatar {
  border-radius:50% !important;
  border:3px solid #fff !important;
  box-shadow:0 4px 16px rgba(0,0,0,.16);
}

/* Titres */
body.sg-member-experience #buddypress h1,
body.sg-member-experience #buddypress h2,
body.sg-member-experience #buddypress h3,
body.sg-member-experience .vibebp_main h1,
body.sg-member-experience .vibebp_main h2,
body.sg-member-experience .vibebp_main h3,
body.sg-member-experience .course_header h1,
body.sg-member-experience .course-header h1 {
  color:var(--sg-black);
  letter-spacing:-.02em;
}

/* Boutons */
body.sg-member-experience #buddypress a.button,
body.sg-member-experience #buddypress button,
body.sg-member-experience #buddypress input[type="submit"],
body.sg-member-experience .vibebp_main button,
body.sg-member-experience .vibebp_main .button,
body.sg-member-experience .course_button,
body.sg-member-experience .course-button,
body.sg-member-experience .start_course,
body.sg-member-experience .start-course,
body.sg-member-experience .continue_course,
body.sg-member-experience .continue-course {
  border:0 !important;
  border-radius:10px !important;
  min-height:42px;
  padding:10px 18px !important;
  background:var(--sg-red) !important;
  color:#fff !important;
  font-weight:800 !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  box-shadow:none !important;
}
body.sg-member-experience #buddypress a.button:hover,
body.sg-member-experience #buddypress button:hover,
body.sg-member-experience #buddypress input[type="submit"]:hover,
body.sg-member-experience .vibebp_main button:hover,
body.sg-member-experience .vibebp_main .button:hover,
body.sg-member-experience .course_button:hover,
body.sg-member-experience .course-button:hover { background:var(--sg-red-dark) !important; }

/* Champs */
body.sg-member-experience #buddypress input[type="text"],
body.sg-member-experience #buddypress input[type="email"],
body.sg-member-experience #buddypress input[type="password"],
body.sg-member-experience #buddypress input[type="search"],
body.sg-member-experience #buddypress select,
body.sg-member-experience #buddypress textarea,
body.sg-member-experience .vibebp_main input,
body.sg-member-experience .vibebp_main select,
body.sg-member-experience .vibebp_main textarea {
  border:1px solid #d8dade !important;
  border-radius:10px !important;
  background:#fff !important;
  min-height:42px;
  box-shadow:none !important;
}
body.sg-member-experience #buddypress input:focus,
body.sg-member-experience #buddypress select:focus,
body.sg-member-experience #buddypress textarea:focus,
body.sg-member-experience .vibebp_main input:focus,
body.sg-member-experience .vibebp_main select:focus,
body.sg-member-experience .vibebp_main textarea:focus {
  border-color:var(--sg-red) !important;
  outline:2px solid rgba(197,29,37,.12) !important;
}

/* Tableaux */
body.sg-member-experience #buddypress table,
body.sg-member-experience .vibebp_main table {
  width:100%;
  border-collapse:separate !important;
  border-spacing:0 !important;
  overflow:hidden;
  border:1px solid var(--sg-line) !important;
  border-radius:12px;
  background:#fff;
}
body.sg-member-experience #buddypress th,
body.sg-member-experience .vibebp_main th {
  background:#f1f2f3 !important;
  color:var(--sg-black) !important;
  font-weight:800;
}
body.sg-member-experience #buddypress td,
body.sg-member-experience #buddypress th,
body.sg-member-experience .vibebp_main td,
body.sg-member-experience .vibebp_main th { border-color:var(--sg-line) !important; }

/* Cours / curriculum */
body.sg-member-experience .course_curriculum .course_section,
body.sg-member-experience .course-curriculum .course-section,
body.sg-member-experience .course_curriculum .unit,
body.sg-member-experience .course-curriculum .unit,
body.sg-member-experience .curriculum .unit {
  border-color:var(--sg-line) !important;
}
body.sg-member-experience .course_curriculum .course_section,
body.sg-member-experience .course-curriculum .course-section {
  background:var(--sg-black) !important;
  color:#fff !important;
  border-radius:10px;
}
body.sg-member-experience .course_curriculum .unit:hover,
body.sg-member-experience .course-curriculum .unit:hover { background:#fafafa !important; }

body.sg-member-experience .progress,
body.sg-member-experience .progressbar,
body.sg-member-experience .course_progressbar,
body.sg-member-experience .course-progressbar {
  background:#e8e8ea !important;
  border-radius:999px !important;
  overflow:hidden;
}
body.sg-member-experience .progress .bar,
body.sg-member-experience .progressbar > span,
body.sg-member-experience .course_progressbar > span,
body.sg-member-experience .course-progressbar > span {
  background:var(--sg-red) !important;
}

/* Statuts normalisés par JS */
body.sg-member-experience .sgme-status-waiting {
  display:inline-flex !important;
  align-items:center;
  gap:8px;
  padding:10px 14px !important;
  border:1px solid #f1d59b !important;
  border-left:4px solid #d59b28 !important;
  border-radius:10px !important;
  background:var(--sg-amber-soft) !important;
  color:#7c4a03 !important;
  font-weight:750 !important;
}
body.sg-member-experience .sgme-status-success {
  border-color:#86d5a0 !important;
  border-left:4px solid var(--sg-green) !important;
  background:var(--sg-green-soft) !important;
  color:#125d2b !important;
}

/* Notices / feedback BuddyPress */
body.sg-member-experience #buddypress .bp-feedback,
body.sg-member-experience #buddypress #message,
body.sg-member-experience .vibebp_main .notice,
body.sg-member-experience .vibebp_main .message {
  border-radius:12px !important;
  box-shadow:none !important;
}

/* Responsive */
@media (max-width: 900px) {
  body.sg-member-experience .sgme-member-banner,
  body.sg-member-experience #buddypress,
  body.sg-member-experience .vibebp_main,
  body.sg-member-experience .vibebp-main {
    width:min(100% - 22px, 1280px);
  }
  body.sg-member-experience .sgme-member-banner { padding:15px 16px; border-radius:14px; }
  body.sg-member-experience #buddypress #item-nav ul,
  body.sg-member-experience #buddypress #object-nav ul {
    display:flex;
    gap:6px;
    overflow-x:auto;
    white-space:nowrap;
    padding:8px;
  }
  body.sg-member-experience #buddypress #item-nav li,
  body.sg-member-experience #buddypress #object-nav li { float:none !important; flex:0 0 auto; }
}

@media (max-width: 560px) {
  body.sg-member-experience .sgme-member-banner { align-items:flex-start; }
  body.sg-member-experience .sgme-member-banner__home { display:none; }
  body.sg-member-experience #buddypress #item-body,
  body.sg-member-experience .vibebp_main .vibebp-content,
  body.sg-member-experience .vibebp_main .profile_content,
  body.sg-member-experience .vibebp_main .profile-content { padding:16px !important; }
  body.sg-member-experience #buddypress table,
  body.sg-member-experience .vibebp_main table { display:block; overflow-x:auto; -webkit-overflow-scrolling:touch; }
}
