/* SPO CSS refonte v1.1.0 - migrated from CSS additionnel.txt */

/* ==========================================================================
   SPO — “CABINET” UI PACK 2026 — SAFE / NO-REGRESSION (CSS ONLY)
   Objectif : rendu premium + cohérence + accessibilité + micro-interactions
   Principe : additif + scope strict (HivePress/ListingHive) + pas de renommage
   ========================================================================== */

/* =========================================================
   0) Tokens locaux (sans dépendre de variables globales)
   ========================================================= */
:root{
  --spo-ink: #0a1428; /* navy texte */
  --spo-surface: #ffffff;
  --spo-surface-2: rgba(10,20,40,.02);
  --spo-line: rgba(10,20,40,.10);
  --spo-line-2: rgba(10,20,40,.08);
  --spo-shadow: 0 10px 30px rgba(10,20,40,.06);
  --spo-shadow-2: 0 14px 40px rgba(10,20,40,.10);
  --spo-r-12: 12px;
  --spo-r-14: 14px;
  --spo-r-16: 16px;
  --spo-gap-14: 14px;
  --spo-gap-16: 16px;
  --spo-pad-18: 18px;
  --spo-pad-16: 16px;
  --spo-pad-14: 14px;
  --spo-focus: rgba(126, 87, 194, .32); /* accent violet soft */
  --spo-focus-2: rgba(10, 132, 255, .22); /* fallback bleu soft */
  --spo-ease: cubic-bezier(.2,.8,.2,1);
}


/* =========================================================
   5) PROFIL CANDIDAT / VENDOR — vendor-view scope strict
   ========================================================= */
body.hp-template--vendor-view-page.single-hp_vendor .hp-page__content,
body.hp-template--vendor-view-page.single-hp_vendor .hp-content{
  padding-top: 6px;
}

/* Harmonise blocs */
body.hp-template--vendor-view-page.single-hp_vendor :where(.hp-block,.hp-panel,.hp-widget){
  border: 1px solid var(--spo-line);
  background: linear-gradient(180deg, #fff 0%, rgba(10,20,40,.01) 100%);
  border-radius: var(--spo-r-16);
  box-shadow: var(--spo-shadow);
  padding: var(--spo-pad-16);
  margin: 0 0 16px;
  overflow: hidden;
  position: relative;
}

/* Accent subtil sur les blocs */
body.hp-template--vendor-view-page.single-hp_vendor :where(.hp-block,.hp-panel,.hp-widget)::before{
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 3px;
  background: linear-gradient(90deg, rgba(126,87,194,.45), rgba(10,20,40,.06));
  opacity: .85;
  pointer-events: none;
}

/* Titres (sans imposer tailles) */
body.hp-template--vendor-view-page.single-hp_vendor :where(.hp-page__title,h1,h2,h3){
  line-height: 1.15;
  color: rgba(10,20,40,.94);
}

/* CTA/buttons profil */
body.hp-template--vendor-view-page.single-hp_vendor :where(.hp-button,button.hp-button,.button,.button-primary){
  border-radius: var(--spo-r-12);
  padding: 10px 14px;
  box-shadow: 0 6px 16px rgba(10,20,40,.08);
}
@media (hover:hover){
  body.hp-template--vendor-view-page.single-hp_vendor :where(.hp-button,button.hp-button,.button,.button-primary):hover{
    transform: translateY(-1px);
    box-shadow: 0 10px 22px rgba(10,20,40,.12);
  }
}

/* Liens */
body.hp-template--vendor-view-page.single-hp_vendor a{ text-decoration: none; }
body.hp-template--vendor-view-page.single-hp_vendor a:hover{ text-decoration: underline; }

/* Sidebar : cohérence */
body.hp-template--vendor-view-page.single-hp_vendor .hp-page__sidebar :where(.hp-block,.hp-panel,.hp-widget){
  border-radius: var(--spo-r-16);
}

/* Responsive padding */
@media (max-width: 980px){
  body.hp-template--vendor-view-page.single-hp_vendor :where(.hp-block,.hp-panel,.hp-widget){
    padding: var(--spo-pad-14);
  }
}

