/* ==========================================================================
   BAARA KUMA — COMPOSANTS DU THÈME ET DE WP JOBHUNT  (v2.0)
   Chaque composant existant est ramené aux mêmes règles : carte blanche,
   bordure fine, rayon --bk-radius-lg, ombre légère, survol discret.
   ========================================================================== */

/* --------------------------------------------------------------------------
   A. CARTES « NOS SERVICES » (élément Icon Box du constructeur)
   -------------------------------------------------------------------------- */
html body .fancy-box.bg-box,
html body .fancy-box.bg-box:hover{ background:transparent !important; border:0 !important; box-shadow:none !important; transform:none !important; }
html body .fancy-box.bg-box > .row{ display:flex; flex-wrap:wrap; row-gap:24px; }
html body .fancy-box.bg-box > .row::before, html body .fancy-box.bg-box > .row::after{ display:none; }
html body .fancy-box.bg-box > .row > [class*="col-"]{ display:flex; float:none; }
html body .cs-icon-box{
  position:relative; display:flex; flex-direction:column; align-items:center; text-align:center; gap:12px;
  width:100%; height:100%; margin:0 !important; padding:32px 28px !important;
  background:#fff !important; border:1px solid var(--bk-border) !important; border-radius:var(--bk-radius-lg) !important;
  box-shadow:var(--bk-shadow-card) !important;
  transition:box-shadow var(--bk-t-base), transform var(--bk-t-base), border-color var(--bk-t-base);
}
html body .cs-icon-box:hover{ transform:translateY(-4px); box-shadow:var(--bk-shadow-hover) !important; border-color:var(--bk-border-strong) !important; }
html body .cs-icon-box .cs-media{ margin:0 !important; float:none !important; }
html body .cs-icon-box .cs-media figure{ margin:0; }
html body .cs-icon-box .cs-media :is(a,figure > i){
  display:inline-flex !important; align-items:center; justify-content:center;
  width:64px; height:64px; border-radius:16px; background:var(--bk-blue-50) !important;
  transition:background-color var(--bk-t-base);
}
html body .cs-icon-box .cs-media i{ font-size:28px !important; color:var(--bk-brand-blue) !important; line-height:1 !important; margin:0 !important; }
html body .cs-icon-box:hover .cs-media a{ background:var(--bk-blue-100) !important; }
html body .cs-icon-box .cs-text{ padding:0 !important; }
html body .cs-icon-box :is(h3,h4,h5){
  font-size:var(--bk-fs-h4) !important; font-weight:var(--bk-fw-bold) !important; letter-spacing:var(--bk-ls-tight) !important;
  text-transform:none !important; margin:4px 0 8px !important; color:var(--bk-ink) !important;
}
html body .cs-icon-box :is(h3,h4,h5) a{ color:var(--bk-ink) !important; }
/* Toute la carte est cliquable via le lien du titre */
html body .cs-icon-box :is(h3,h4,h5) a::after{ content:""; position:absolute; inset:0; border-radius:inherit; }
html body .cs-icon-box :is(h3,h4,h5) a:hover{ color:var(--bk-blue-600) !important; }
html body .cs-icon-box p, html body .cs-icon-box p span{
  font-size:var(--bk-fs-sm) !important; line-height:1.6 !important; color:var(--bk-muted) !important; margin:0 !important;
  font-family:var(--bk-font) !important; background:none !important;
}

/* --------------------------------------------------------------------------
   B. LISTES D'OFFRES D'EMPLOI (WP JobHunt)
   -------------------------------------------------------------------------- */
/* Section « Offres d'emploi » de l'accueil : fond gris clair (et non plus bleu nuit) */
html body .page-section:has(.cs-jobs-container){ background:var(--bk-surface) !important; }
html body .page-section:has(.cs-jobs-container) .cs-heading :is(h1,h2,h3){ color:var(--bk-ink); }

html body ul.jobs-listing{ margin:0 !important; padding:0 !important; display:flex !important; flex-wrap:wrap; row-gap:16px; }
html body ul.jobs-listing::before, html body ul.jobs-listing::after{ display:none; }
html body ul.jobs-listing > li{ float:none !important; display:flex !important; margin:0 !important; border:0 !important; background:none !important; }
html body ul.jobs-listing > li > *{ flex:1 1 auto; }
html body .jobs-content{
  position:relative; display:flex !important; align-items:flex-start; gap:18px; flex-direction:row-reverse; justify-content:flex-end;
  width:100% !important; padding:20px 22px !important; margin:0 !important;
  background:#fff !important; border:1px solid var(--bk-border) !important; border-radius:var(--bk-radius-lg) !important;
  box-shadow:var(--bk-shadow-card) !important;
  transition:box-shadow var(--bk-t-base), transform var(--bk-t-base), border-color var(--bk-t-base);
}
html body .jobs-content:hover{ transform:translateY(-2px); box-shadow:var(--bk-shadow-hover) !important; border-color:var(--bk-border-strong) !important; }
html body .jobs-content .cs-text{ display:block !important; width:auto !important; flex:1 1 auto; min-width:0; padding:0 !important; margin:0 !important; float:none !important; }
html body .jobs-content .cs-media{
  flex:0 0 64px; width:64px !important; height:64px; margin:0 !important; float:none !important; position:relative;
  border:1px solid var(--bk-border); border-radius:var(--bk-radius-md); background:#fff; overflow:visible;
  display:flex !important; align-items:center; justify-content:center;
}
html body .jobs-content .cs-media figure{ margin:0 !important; width:100% !important; height:100% !important; display:flex !important; align-items:center; justify-content:center; overflow:hidden; border-radius:inherit; }
html body .jobs-content .cs-media img{ display:block !important; max-width:52px !important; max-height:52px !important; width:auto !important; height:auto !important; object-fit:contain; }
html body .jobs-content .feature-post{
  position:absolute; top:-8px; right:-8px; width:22px; height:22px; border-radius:50%;
  background:var(--bk-brand-orange) !important; color:#fff !important; display:flex; align-items:center; justify-content:center;
  font-size:11px; box-shadow:0 0 0 2px #fff; overflow:hidden;
}
html body .jobs-content .feature-post i{ color:#fff !important; font-size:11px; margin:0 !important; }
html body .jobs-content .feature-post::before, html body .jobs-content .feature-post::after{ display:none !important; }
html body .jobs-content .cs-post-title{ margin:0 0 6px !important; padding:0 !important; }
html body .jobs-content .cs-post-title :is(h2,h3,h4,h5){
  font-size:var(--bk-fs-h5) !important; line-height:var(--bk-lh-snug) !important; font-weight:var(--bk-fw-bold) !important;
  letter-spacing:0 !important; margin:0 !important;
}
html body .jobs-content .cs-post-title a{ color:var(--bk-ink) !important; }
html body .jobs-content .cs-post-title a::after{ content:""; position:absolute; inset:0; border-radius:inherit; z-index:0; }
html body .jobs-content:hover .cs-post-title a{ color:var(--bk-blue-600) !important; }
html body .jobs-content .post-options{ display:flex !important; flex-wrap:wrap; align-items:center; gap:4px 16px; margin:0 0 10px !important; padding:0 !important; }
html body .jobs-content .post-options > *{ float:none !important; padding:0 !important; margin:0 !important; border:0 !important; display:inline-flex; align-items:center; gap:4px; }
html body .jobs-content .post-options > *::before, html body .jobs-content .post-options > *::after{ display:none !important; }
html body .jobs-content .post-options i, html body .jobs-content .cs-location i{ color:var(--bk-brand-orange) !important; font-size:14px; }
html body .jobs-content :is(.jobtype-btn, a, button, .cs-add-wishlist, .shortlist){ position:relative; z-index:1; }
html body .jobs-content .jobtype-btn{ background:var(--bk-blue-50) !important; color:var(--bk-blue-700) !important; width:auto !important; min-width:0 !important; }
html body .jobs-content p{ font-size:var(--bk-fs-sm) !important; line-height:1.6 !important; color:var(--bk-muted) !important; margin:6px 0 0 !important; }
html body .jobs-content .read-more, html body .jobs-content a.read-more{ font-weight:var(--bk-fw-semi) !important; color:var(--bk-blue-600) !important; text-transform:none !important; letter-spacing:0 !important; font-size:var(--bk-fs-sm) !important; }
/* Variante liste détaillée (page Offres d'emploi) */
html body .jobs-listing:not(.fancy) .jobs-content{ flex-direction:row; }
html body .jobs-listing .jobs-content ul, html body .jobs-listing .jobs-content dl{ margin:0 0 6px; }
html body .jobs-listing .jobs-content :is(li,dt,dd){ font-size:var(--bk-fs-sm); color:var(--bk-text); }
/* Favori (cœur) */
html body.wp-jobhunt .jobs-listing li .jobs-content :is(.wish-list, .list-options) :is(.shortlist, .heart-btn),
html body .jobs-content :is(.cs-add-wishlist, .shortlist, .wishlist, a[class*="wish"]){
  display:inline-flex !important; align-items:center; justify-content:center; width:38px; height:38px; padding:0 !important;
  border-radius:50% !important; border:1px solid var(--bk-border) !important; background:#fff !important; color:var(--bk-muted) !important;
}
html body.wp-jobhunt .jobs-listing li .jobs-content :is(.wish-list, .list-options) :is(.shortlist, .heart-btn):hover,
html body .jobs-content :is(.cs-add-wishlist, .shortlist, .wishlist, a[class*="wish"]):hover{ color:var(--bk-brand-orange) !important; border-color:var(--bk-orange-100) !important; background:var(--bk-orange-50) !important; }

/* « Envoyez-moi des emplois similaires » */
html body .email-me-top{ margin:0 0 16px !important; float:none !important; }
html body .email-jobs-top{ gap:8px; }
html body .email-jobs-top i{ color:inherit !important; position:static !important; margin:0 !important; }
html body .email-jobs-top::before{ position:static !important; margin:0 !important; font-size:15px; line-height:1; }
html body .job-alert-box{
  background:#fff !important; border:1px solid var(--bk-border) !important; border-radius:var(--bk-radius-lg) !important;
  box-shadow:var(--bk-shadow-pop) !important; padding:24px !important;
}
html body .job-alert-box h3{ font-size:var(--bk-fs-h4) !important; margin:0 0 14px !important; }
html body .job-alert-box .newsletter{ display:flex; flex-wrap:wrap; gap:10px; }
html body .job-alert-box .newsletter input{ flex:1 1 200px; margin:0 !important; }
html body .job-alert-box .alert-frequency{ margin-top:12px; color:var(--bk-muted); font-size:var(--bk-fs-sm); display:flex; flex-wrap:wrap; gap:8px 18px; align-items:center; }
html body .btn-close-job-alert-box{ cursor:pointer; color:var(--bk-muted) !important; width:32px; height:32px; display:flex; align-items:center; justify-content:center; border-radius:50%; }
html body .btn-close-job-alert-box:hover{ background:var(--bk-surface-2); color:var(--bk-ink) !important; }

/* --------------------------------------------------------------------------
   C. FILTRES DE RECHERCHE (colonne gauche de « Offres d'emploi »)
   -------------------------------------------------------------------------- */
html body .cs-listing-filters{
  background:#fff !important; border:1px solid var(--bk-border) !important; border-radius:var(--bk-radius-lg) !important;
  box-shadow:var(--bk-shadow-card) !important; padding:8px 20px !important; overflow:hidden;
}
html body .cs-listing-filters > div{ background:transparent !important; border:0 !important; border-bottom:1px solid var(--bk-border) !important; padding:18px 0 !important; margin:0 !important; }
html body .cs-listing-filters > div:last-child{ border-bottom:0 !important; }
html body .cs-listing-filters :is(.searchbox-heading h5, .searchbox-heading h4, .accordion-heading a){
  font-size:var(--bk-fs-body) !important; font-weight:var(--bk-fw-bold) !important; color:var(--bk-ink) !important;
  text-transform:none !important; letter-spacing:0 !important; margin:0 0 12px !important; padding:0 !important; background:none !important; border:0 !important;
}
html body .cs-listing-filters .searchbox-heading{ background:none !important; border:0 !important; padding:0 !important; margin:0 !important; }
html body .cs-listing-filters .searchbox-heading h5::first-letter{ text-transform:uppercase; }
html body .cs-listing-filters .search-input{ position:relative; }
html body .cs-listing-filters .search-input i{ position:absolute !important; left:14px !important; right:auto !important; top:50% !important; transform:translateY(-50%); color:var(--bk-subtle) !important; z-index:1; }
html body .cs-listing-filters .search-input input{ font-size:var(--bk-fs-sm) !important; }
html body .cs-listing-filters .search-input input{ padding-left:40px !important; background:var(--bk-surface) !important; box-shadow:none !important; border-color:transparent !important; width:100%; }
html body .cs-listing-filters .search-input input:focus{ background:#fff !important; border-color:var(--bk-blue-600) !important; }
html body .cs-listing-filters ul{ margin:0 !important; }
/* Listes de filtres : on garde la mécanique du thème (pastilles, cases,
   boutons radio dessinés en ::before) et on harmonise seulement le texte. */
html body .cs-listing-filters ul li{ padding-top:0 !important; padding-bottom:0 !important; border:0 !important; background:none !important; }
html body .cs-listing-filters ul li :is(a,label){
  color:var(--bk-text) !important; font-size:var(--bk-fs-sm) !important; font-weight:var(--bk-fw-regular) !important;
  text-transform:none !important; letter-spacing:0 !important; line-height:1.5 !important; background:none !important;
}
html body .cs-listing-filters ul li :is(a,label):hover{ color:var(--bk-blue-600) !important; }
html body .cs-listing-filters ul li :is(a,label) span{ color:var(--bk-subtle) !important; font-size:var(--bk-fs-xs) !important; }
html body .cs-listing-filters ul li :is(a.active, .active a){ color:var(--bk-blue-700) !important; font-weight:var(--bk-fw-semi) !important; }
html body .cs-listing-filters .cs-radio-btn a::before{ border-color:var(--bk-border-strong) !important; }
html body .cs-listing-filters .cs-radio-btn a.active::before, html body .cs-listing-filters .cs-radio-btn.active a::before{ border-color:var(--bk-blue-600) !important; }
html body .cs-listing-filters .checkbox label::before{ border-radius:4px !important; border-color:var(--bk-border-strong) !important; }
html body .cs-listing-filters .accordion-group{ border:0 !important; border-top:1px solid var(--bk-border) !important; border-radius:0 !important; margin:0 !important; background:none !important; }
html body .cs-listing-filters .accordion-group:first-child{ border-top:0 !important; }
html body .cs-listing-filters .accordion-heading a{
  display:flex !important; align-items:center; justify-content:space-between; padding:14px 0 !important; margin:0 !important;
}
html body .cs-listing-filters .accordion-heading a::after, html body .cs-listing-filters .accordion-heading a::before{ color:var(--bk-muted) !important; }
html body .cs-listing-filters .accordion-inner{ padding:0 0 12px !important; border:0 !important; }
html body .cs-listing-filters .cs-expand-filters{
  display:flex !important; align-items:center; justify-content:center; gap:8px; min-height:var(--bk-control-h-sm);
  margin:12px 0 !important; padding:0 14px !important; cursor:pointer;
  background:var(--bk-surface) !important; color:var(--bk-ink) !important; border:1px solid var(--bk-border) !important;
  border-radius:var(--bk-radius-md) !important; font-weight:var(--bk-fw-semi) !important; text-transform:none !important;
  letter-spacing:0 !important; font-size:var(--bk-fs-sm) !important;
}
html body .cs-listing-filters .cs-expand-filters:hover{ border-color:var(--bk-blue-600) !important; color:var(--bk-blue-700) !important; }
html body .cs-listing-filters .cs-expand-filters i{ position:static !important; float:none !important; color:inherit !important; order:2; font-size:12px; }
html body .cs-listing-filters :is(.expand-filters, .more-filters) :is(a,button){
  background:var(--bk-surface) !important; color:var(--bk-ink) !important; border-radius:var(--bk-radius-md) !important;
  font-weight:var(--bk-fw-semi) !important; text-transform:none !important; letter-spacing:0 !important; font-size:var(--bk-fs-sm) !important;
}

/* --------------------------------------------------------------------------
   D. LISTES DE CANDIDATS (« Nos candidats de la semaine », grilles)
   -------------------------------------------------------------------------- */
html body ul.cs-candidate-list{ display:flex !important; flex-wrap:wrap; row-gap:20px; margin-bottom:0 !important; }
html body ul.cs-candidate-list::before, html body ul.cs-candidate-list::after{ display:none; }
html body ul.cs-candidate-list > li{ float:none !important; display:flex !important; margin:0 !important; }
html body .candidate-holder{
  position:relative; display:flex !important; align-items:center; gap:16px; flex-direction:row-reverse; justify-content:flex-end;
  width:100% !important; padding:18px 20px !important; margin:0 !important;
  background:#fff !important; border:1px solid var(--bk-border) !important; border-radius:var(--bk-radius-lg) !important;
  box-shadow:var(--bk-shadow-card) !important; transition:box-shadow var(--bk-t-base), transform var(--bk-t-base);
}
html body .candidate-holder:hover{ transform:translateY(-2px); box-shadow:var(--bk-shadow-hover) !important; }
html body .candidate-holder .cs-media{ flex:0 0 56px; width:56px !important; height:56px; margin:0 !important; float:none !important; }
html body .candidate-holder .cs-media :is(figure,a){ display:block; width:100%; height:100%; margin:0; }
html body .candidate-holder .cs-media img{ width:56px !important; height:56px !important; border-radius:50% !important; object-fit:cover; background:var(--bk-surface-2); }
html body .candidate-holder .cs-text{ display:block !important; width:auto !important; flex:1 1 auto; min-width:0; padding:0 !important; float:none !important; }
html body .candidate-holder .cs-post-title{ margin:0 !important; }
html body .candidate-holder :is(h4,h5,h3){
  font-size:var(--bk-fs-body) !important; font-weight:var(--bk-fw-bold) !important; letter-spacing:0 !important;
  text-transform:none !important; margin:0 0 2px !important; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
html body .candidate-holder :is(h4,h5,h3) a{ color:var(--bk-ink) !important; }
html body .candidate-holder :is(h4,h5,h3) a::after{ content:""; position:absolute; inset:0; border-radius:inherit; }
html body .candidate-holder:hover :is(h4,h5,h3) a{ color:var(--bk-blue-600) !important; }
html body .candidate-holder .cs-location{ display:block; font-size:var(--bk-fs-xs) !important; }
html body .cs-candidate-list:not(.modern) li > div{ border-radius:var(--bk-radius-lg) !important; }

/* --------------------------------------------------------------------------
   E. BLOG (accueil « Astuces », page Blog, article)
   -------------------------------------------------------------------------- */
/* Grille des articles */
html body .cs-blog.blog-grid, html body .cs-blog.blog-modern, html body .cs-blog.blog-medium{
  position:relative; display:flex !important; flex-direction:column; height:calc(100% - 28px); margin:0 0 28px !important;
  background:#fff !important; border:1px solid var(--bk-border) !important; border-radius:var(--bk-radius-lg) !important;
  box-shadow:var(--bk-shadow-card) !important; overflow:hidden;
  transition:box-shadow var(--bk-t-base), transform var(--bk-t-base);
}
html body .cs-blog:is(.blog-grid,.blog-modern,.blog-medium):hover{ transform:translateY(-3px); box-shadow:var(--bk-shadow-hover) !important; }
html body .cs-blog .cs-media{ margin:0 !important; aspect-ratio:16/9; background:var(--bk-surface-2); overflow:hidden; }
html body .cs-blog .cs-media figure{ margin:0; height:100%; }
html body .cs-blog .cs-media img{ width:100% !important; height:100% !important; object-fit:cover; display:block; font-size:0; color:transparent; transition:transform var(--bk-t-slow); }
html body .cs-blog:hover .cs-media img{ transform:scale(1.03); }
html body .cs-blog .blog-text{ flex:1 1 auto; display:flex; flex-direction:column; padding:20px 22px 22px !important; margin:0 !important; width:auto !important; background:transparent !important; border:0 !important; box-shadow:none !important; }
html body .cs-blog .cs-inner-bolg{ display:flex; flex-direction:column; gap:6px; }
html body .cs-blog .post-option{ display:flex; flex-wrap:wrap; gap:4px 14px; order:-1; margin:0 0 4px !important; padding:0 !important; border:0 !important; }
html body .cs-blog .post-option span{ float:none !important; padding:0 !important; margin:0 !important; border:0 !important; }
html body .cs-blog .post-option span::before, html body .cs-blog .post-option span::after{ display:none !important; }
html body .cs-blog .post-option a{ color:var(--bk-muted) !important; font-size:var(--bk-fs-xs) !important; text-transform:none !important; letter-spacing:0 !important; }
html body .cs-blog .cs-post-title{ margin:0 0 6px !important; }
html body .cs-blog:is(.blog-grid,.blog-modern,.blog-medium,.blog-large) .cs-post-title :is(h2,h3,h4),
html body .cs-blog .cs-post-title :is(h2,h3,h4){
  font-size:var(--bk-fs-h5) !important; line-height:var(--bk-lh-snug) !important; font-weight:var(--bk-fw-bold) !important;
  letter-spacing:0 !important; text-transform:none !important; margin:0 !important;
}
html body .cs-blog .cs-post-title a,
html body .cs-blog:is(.blog-grid,.blog-modern,.blog-medium,.blog-large) .cs-post-title :is(h2,h3,h4) a{ color:var(--bk-ink) !important; text-transform:none !important; }
html body .cs-blog .cs-post-title a::after{ content:""; position:absolute; inset:0; z-index:0; }
html body .cs-blog:hover .cs-post-title a{ color:var(--bk-blue-600) !important; }
html body .cs-blog .cs-post-title::after, html body .cs-blog .blog-separator{ display:none !important; }
html body .cs-blog .blog-text p{ font-size:var(--bk-fs-sm) !important; line-height:1.6 !important; color:var(--bk-muted) !important; margin:0 0 10px !important; }
html body .cs-blog :is(.read-more, a.read-more){
  position:relative; z-index:1; margin-top:auto; color:var(--bk-blue-600) !important; font-weight:var(--bk-fw-semi) !important;
  font-size:var(--bk-fs-sm) !important; text-transform:none !important; letter-spacing:0 !important;
}
html body .cs-blog :is(.read-more, a.read-more)::before{ display:none !important; }
html body .cs-blog .post-comment a, html body .cs-blog .post-date a{ position:relative; z-index:1; }
/* Lignes de grille de même hauteur */
html body .page-section .row:has(> [class*="col-"] > .cs-blog){ display:flex; flex-wrap:wrap; }
html body .page-section .row:has(> [class*="col-"] > .cs-blog)::before,
html body .page-section .row:has(> [class*="col-"] > .cs-blog)::after{ display:none; }
html body .page-section .row > [class*="col-"]:has(> .cs-blog){ float:none; display:flex; flex-direction:column; }

/* Article (page de détail) */
html body .cs-blog-detail .cs-main-post{ margin:0 0 24px !important; border-radius:var(--bk-radius-lg); overflow:hidden; }
html body .cs-blog-detail .cs-main-post img{ width:100%; display:block; }
html body .cs-blog-detail .cs-post-title{ display:flex; flex-wrap:wrap; align-items:center; gap:10px 18px; margin:0 0 24px !important; padding:0 0 16px !important; border-bottom:1px solid var(--bk-border) !important; }
html body .cs-blog-detail .cs-author{ display:flex; align-items:center; gap:10px; float:none !important; margin:0 !important; }
html body .cs-blog-detail .cs-author img{ border-radius:50% !important; }
html body .cs-blog-detail .cs-author a{ color:var(--bk-ink) !important; font-weight:var(--bk-fw-semi); }
html body .cs-blog-detail .post-option{ display:flex; flex-wrap:wrap; gap:6px 16px; float:none !important; margin:0 !important; }
html body .cs-blog-detail .post-option span{ float:none !important; padding:0 !important; margin:0 !important; border:0 !important; font-size:var(--bk-fs-sm) !important; color:var(--bk-muted) !important; }
html body .cs-blog-detail .post-option :is(a,i){ color:var(--bk-muted) !important; text-transform:none !important; }
html body .cs-blog-detail .rich-editor-text{ font-size:1.0625rem; max-width:72ch; }
html body .cs-blog-detail .rich-editor-text p{ font-size:1.0625rem !important; line-height:1.75 !important; }

/* Barre latérale / widgets */
html body .page-sidebar .widget{
  background:#fff; border:1px solid var(--bk-border) !important; border-radius:var(--bk-radius-lg) !important;
  padding:22px !important; margin:0 0 20px !important; box-shadow:var(--bk-shadow-card);
}
html body .page-sidebar .widget-title{ border:0 !important; margin:0 0 14px !important; padding:0 !important; }
html body .page-sidebar .widget-title::before, html body .page-sidebar .widget-title::after{ display:none !important; }
html body .page-sidebar .widget-title :is(h2,h3,h4,h5,h6){ font-size:var(--bk-fs-body) !important; margin:0 !important; text-transform:none !important; letter-spacing:0 !important; }
html body .page-sidebar .widget ul li{ border:0 !important; padding:6px 0 !important; }
html body .page-sidebar .widget ul li a{ color:var(--bk-text) !important; font-size:var(--bk-fs-sm) !important; }
html body .page-sidebar .widget ul li a:hover{ color:var(--bk-blue-600) !important; }

/* Commentaires */
html body #comment ul li .thumblist, html body .comment-respond{
  background:#fff; border:1px solid var(--bk-border); border-radius:var(--bk-radius-lg); padding:20px;
}

/* --------------------------------------------------------------------------
   F. PARTENAIRES (carrousel de logos)
   -------------------------------------------------------------------------- */
html body .cs-clinets ul.clients{ margin:0 !important; padding:0 44px !important; position:relative; }
html body .cs-clinets ul.clients li{ padding:0 10px !important; border:0 !important; }
html body .cs-clinets ul.clients li a{
  display:flex !important; align-items:center; justify-content:center; height:96px; padding:14px;
  background:#fff; border:1px solid var(--bk-border); border-radius:var(--bk-radius-lg);
  transition:border-color var(--bk-t-base), box-shadow var(--bk-t-base);
}
html body .cs-clinets ul.clients li a:hover{ border-color:var(--bk-border-strong); box-shadow:var(--bk-shadow-card); }
html body .cs-clinets ul.clients li img{ max-height:64px; width:auto !important; max-width:100%; object-fit:contain; filter:grayscale(1); opacity:.75; transition:filter var(--bk-t-base), opacity var(--bk-t-base); }
html body .cs-clinets ul.clients li a:hover img{ filter:none; opacity:1; }
html body .cs-clinets .slick-arrow{
  position:absolute; top:50%; transform:translateY(-50%); z-index:2; width:36px; height:36px; border-radius:50%;
  background:#fff !important; border:1px solid var(--bk-border) !important; color:var(--bk-ink) !important; box-shadow:var(--bk-shadow-card);
}
html body .cs-clinets .slick-arrow{ display:flex !important; align-items:center; justify-content:center; font-size:0 !important; text-indent:0 !important; padding:0 !important; }
html body .cs-clinets .slick-arrow::before{
  content:"" !important; display:block; width:8px; height:8px; opacity:1 !important;
  border:solid currentColor; border-width:0 2px 2px 0; transform:rotate(135deg); margin-left:3px;
}
html body .cs-clinets .slick-next::before{ transform:rotate(-45deg); margin:0 3px 0 0; }
html body .cs-clinets .slick-prev{ left:0; } html body .cs-clinets .slick-next{ right:0; }
html body .cs-clinets .slick-arrow:hover{ border-color:var(--bk-blue-600) !important; color:var(--bk-blue-600) !important; }

/* --------------------------------------------------------------------------
   G. FENÊTRES MODALES (connexion, inscription, postuler, mot de passe)
   -------------------------------------------------------------------------- */
html body .modal-backdrop.in{ opacity:.55; background:var(--bk-ink); }
html body .modal .modal-content{
  border:0 !important; border-radius:var(--bk-radius-xl) !important; box-shadow:var(--bk-shadow-pop) !important; overflow:hidden;
}
html body .modal .modal-body{ padding:28px !important; }
html body .modal .modal-header{ border:0 !important; padding:0 0 16px !important; position:relative; }
html body .modal :is(.modal-title, .modal-header h4){
  font-size:var(--bk-fs-h4) !important; font-weight:var(--bk-fw-bold) !important; color:var(--bk-ink) !important;
  text-transform:none !important; letter-spacing:0 !important; margin:0 !important;
}
html body .modal :is(.modal-title, .modal-header h4)::first-letter{ text-transform:uppercase; }
html body .modal .close{
  position:absolute; right:-6px; top:-6px; width:36px; height:36px; border-radius:50%; opacity:1 !important;
  display:flex !important; align-items:center; justify-content:center; color:var(--bk-muted) !important; text-shadow:none !important;
  font-size:22px !important; background:transparent !important;
}
html body .modal .close:hover{ background:var(--bk-surface-2) !important; color:var(--bk-ink) !important; }
html body .modal .input-holder, html body .modal .input-filed{ position:relative; margin-bottom:14px !important; }
html body .modal .input-holder > i{ position:absolute; left:14px; top:50%; transform:translateY(-50%); color:var(--bk-subtle) !important; z-index:1; }
html body .modal .input-holder > input{ padding-left:42px !important; width:100% !important; }
html body .modal .filed-border{ border:0 !important; }
html body .modal :is(input[type="submit"], .cs-bgcolor){ width:100%; }
html body .modal .cs-login-switch.cs-bgcolor{ background:transparent !important; color:var(--bk-blue-600) !important; border-color:transparent !important; min-height:0; padding:8px 0 !important; }
html body .modal .cs-login-switch.cs-bgcolor:hover{ text-decoration:underline !important; box-shadow:none !important; }
html body .modal label{ font-size:var(--bk-fs-sm) !important; }
html body .modal.fade :is(a, button, input[type="submit"], label, span, p){ text-transform:none !important; letter-spacing:0 !important; }
html body .modal .required{ color:var(--bk-danger) !important; }
html body .modal .nav-tabs{ border:0 !important; display:flex; gap:6px; background:var(--bk-surface); padding:4px; border-radius:var(--bk-radius-md); margin-bottom:18px; }
html body .modal .nav-tabs > li{ float:none; flex:1; margin:0 !important; }
html body .modal .nav-tabs > li > a{ border:0 !important; border-radius:var(--bk-radius-sm) !important; text-align:center; color:var(--bk-muted) !important; font-weight:var(--bk-fw-semi) !important; margin:0 !important; padding:10px !important; text-transform:none !important; }
html body .modal .nav-tabs > li.active > a{ background:#fff !important; color:var(--bk-ink) !important; box-shadow:var(--bk-shadow-card); }

/* --------------------------------------------------------------------------
   H. TARIFS / PACKS, TABLEAUX
   -------------------------------------------------------------------------- */
html body :is(.cs-pricetable, .price-packege, .cs-packages .packege, .pricetable-holder){
  background:#fff !important; border:1px solid var(--bk-border) !important; border-radius:var(--bk-radius-lg) !important;
  box-shadow:var(--bk-shadow-card) !important; overflow:hidden;
}
/* Tableau de packs saisi en HTML dans les pages « Pack employeur / candidat » */
html body .pricing-table{ display:grid; grid-template-columns:repeat(auto-fit, minmax(260px, 1fr)); gap:24px; margin:8px 0 24px; max-width:none !important; }
html body .pricing-option{
  display:flex; flex-direction:column; gap:12px; padding:28px 26px;
  background:#fff; border:1px solid var(--bk-border); border-radius:var(--bk-radius-lg); box-shadow:var(--bk-shadow-card);
  transition:box-shadow var(--bk-t-base), transform var(--bk-t-base);
}
html body .pricing-option:hover{ box-shadow:var(--bk-shadow-hover); transform:translateY(-3px); }
html body .pricing-option > h1{ font-size:var(--bk-fs-h3) !important; margin:0 !important; color:var(--bk-ink); }
html body .pricing-option > hr{ margin:0 !important; border-top-color:var(--bk-border); }
html body .pricing-option > p{ margin:0 !important; font-size:var(--bk-fs-sm) !important; }
html body .pricing-option > p span[style]{ color:var(--bk-orange-700) !important; font-weight:var(--bk-fw-semi); }
html body .pricing-option .price{ margin-top:auto; padding-top:8px; }
html body .pricing-option .price .front:empty{ display:none; }
html body .pricing-option a.button{
  display:flex; align-items:center; justify-content:center; min-height:var(--bk-control-h); width:100%;
  background:var(--bk-blue-600) !important; color:#fff !important; border-radius:var(--bk-radius-md);
  font-weight:var(--bk-fw-semi); text-decoration:none !important; transition:background-color var(--bk-t-fast);
}
html body .pricing-option a.button:hover{ background:var(--bk-blue-700) !important; }

html body table{ border-collapse:collapse; width:100%; }
html body :is(.rich-editor-text, .entry-content, .woocommerce) table :is(th,td){ border:1px solid var(--bk-border) !important; padding:10px 12px !important; font-size:var(--bk-fs-sm); }
html body :is(.rich-editor-text, .entry-content, .woocommerce) table th{ background:var(--bk-surface) !important; color:var(--bk-ink) !important; font-weight:var(--bk-fw-semi) !important; }

/* --------------------------------------------------------------------------
   I. ESPACES CANDIDAT / EMPLOYEUR (tableaux de bord)
   -------------------------------------------------------------------------- */
html body .account-menu{ background:#fff; border:1px solid var(--bk-border) !important; border-radius:var(--bk-radius-lg) !important; padding:8px !important; }
html body .account-menu li{ border:0 !important; }
html body .account-menu li a{ display:flex; align-items:center; gap:10px; padding:10px 12px !important; border-radius:var(--bk-radius-sm); color:var(--bk-text) !important; font-size:var(--bk-fs-sm) !important; }
html body .account-menu li a i{ color:var(--bk-muted) !important; }
html body .account-menu li:is(.active) a, html body .account-menu li a:hover{ background:var(--bk-blue-50) !important; color:var(--bk-blue-700) !important; }
html body .account-menu li:is(.active) a i, html body .account-menu li a:hover i{ color:var(--bk-blue-600) !important; }

/* --------------------------------------------------------------------------
   J. WOOCOMMERCE & FORUM (bbPress) — alignement léger
   -------------------------------------------------------------------------- */
html body .woocommerce ul.products li.product{
  background:#fff; border:1px solid var(--bk-border); border-radius:var(--bk-radius-lg); padding:16px !important; box-shadow:var(--bk-shadow-card);
}
html body .woocommerce ul.products li.product .price{ color:var(--bk-ink) !important; font-weight:var(--bk-fw-bold); }
html body .woocommerce span.onsale{ background:var(--bk-orange-600) !important; border-radius:var(--bk-radius-pill) !important; min-height:0; line-height:1.4; padding:4px 10px; }
html body #bbpress-forums{ font-size:var(--bk-fs-body); }
html body #bbpress-forums :is(ul.bbp-forums, ul.bbp-topics, ul.bbp-replies){ border:1px solid var(--bk-border) !important; border-radius:var(--bk-radius-lg); overflow:hidden; }
html body #bbpress-forums li.bbp-header{ background:var(--bk-surface) !important; color:var(--bk-ink); font-weight:var(--bk-fw-semi); }

/* --------------------------------------------------------------------------
   K. RESPONSIVE DES COMPOSANTS
   -------------------------------------------------------------------------- */
@media (max-width:991px){
  html body .cs-listing-filters{ margin-bottom:24px !important; }
}
@media (max-width:767px){
  html body .cs-icon-box{ padding:24px 20px !important; }
  html body .jobs-content{ padding:16px !important; gap:14px; }
  html body .jobs-content .cs-media{ flex-basis:52px; width:52px !important; height:52px; }
  html body .candidate-holder{ padding:14px 16px !important; }
  html body .cs-clinets ul.clients{ padding:0 40px !important; }
}
