/* Thème 1 : Normandie Glass - couverture complète */
:root{
  --vac-primary:#4f46e5;--vac-secondary:#06b6d4;--vac-accent:#10b981;--vac-bg:#f5f8ff;--vac-text:#172033;
  --theme-primary:#4f46e5;--theme-secondary:#06b6d4;--theme-accent:#10b981;--theme-text:#172033;--theme-muted:#64748b;
  --theme-surface:rgba(255,255,255,.76);--theme-input:rgba(255,255,255,.84);--theme-border:rgba(255,255,255,.58);--theme-border-strong:rgba(79,70,229,.16);
  --theme-soft:rgba(79,70,229,.085);--theme-primary-glow:rgba(79,70,229,.16);--theme-gradient:linear-gradient(135deg,#4f46e5,#06b6d4);
  --theme-shadow:0 18px 45px rgba(79,70,229,.10),0 2px 10px rgba(15,23,42,.04);--theme-button-shadow:0 14px 30px rgba(79,70,229,.24);
  --theme-radius:24px;--theme-blur:22px;
}
body{background:radial-gradient(circle at 8% 0%,rgba(199,210,254,.95),transparent 28%),radial-gradient(circle at 92% 4%,rgba(165,243,252,.80),transparent 34%),linear-gradient(180deg,#f8fbff,#eef6ff)!important;color:var(--theme-text)}
.navbar-glass{background:rgba(255,255,255,.78)!important;border-bottom:1px solid rgba(255,255,255,.56)!important;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);box-shadow:0 10px 30px rgba(79,70,229,.08)!important}
.brand-badge,.icon-btn:not(.btn-outline-secondary){background:var(--theme-gradient)!important;color:#fff!important}.nav-link.active{background:var(--theme-soft)!important;color:var(--theme-primary)!important}.eyebrow{color:var(--theme-primary)!important}


/* =========================================================
   Couche complète thème - ne modifie PAS la position du header
   Couvre notifications, menus, formulaires, modales, cards et pages isolées
   ========================================================= */
html{scroll-behavior:smooth}
body{min-height:100vh;background-attachment:fixed!important}

/* Surfaces générales */
.card,.card-body,.vac-card,.app-card,.feed-card,.post-card,.job-card,.event-card,.ad-card,.deal-card,.contest-card,
.profile-card,.company-card,.dashboard-card,.admin-card,.settings-card,.cv-card,.message-card,.devis-card,
.table-card,.filter-card,.search-card,.hero-box,.idees-hero-box,.pro-panel,.quick-card,
.list-group,.dropdown-menu,.modal-content,.offcanvas,.toast,.alert:not(.alert-danger):not(.alert-warning):not(.alert-success):not(.alert-info){
  background:var(--theme-surface)!important;
  border:1px solid var(--theme-border)!important;
  border-radius:var(--theme-radius)!important;
  box-shadow:var(--theme-shadow)!important;
  backdrop-filter:blur(var(--theme-blur));
  -webkit-backdrop-filter:blur(var(--theme-blur));
  color:var(--theme-text)!important;
}

/* Notifications + dropdown utilisateur */
.dropdown-menu,.app-dropdown,.notifications-dropdown,.user-dropdown{
  overflow:hidden!important;
  padding:.55rem!important;
}
.dropdown-header,.notif-head,.dropdown-title{
  color:var(--theme-text)!important;
  font-weight:900!important;
}
.dropdown-item,.notification-item,.notif-item{
  border-radius:18px!important;
  padding:.8rem .9rem!important;
  color:var(--theme-text)!important;
  border:1px solid transparent!important;
}
.dropdown-item:hover,.dropdown-item:focus,.notification-item:hover,.notif-item:hover{
  background:var(--theme-soft)!important;
  border-color:var(--theme-border-strong)!important;
  color:var(--theme-primary)!important;
}
.dropdown-item.unread,.notification-item.unread,.notif-item.unread{
  background:linear-gradient(135deg,var(--theme-soft),rgba(255,255,255,.68))!important;
  border-color:var(--theme-border-strong)!important;
  position:relative;
}
.dropdown-item.unread::before,.notification-item.unread::before,.notif-item.unread::before{
  content:"";width:9px;height:9px;border-radius:999px;background:var(--theme-primary);display:inline-block;margin-right:7px;
  box-shadow:0 0 0 4px var(--theme-primary-glow);
}
.dropdown-item small,.notification-item small,.notif-item small,.text-muted{color:var(--theme-muted)!important}

/* Boutons */
.btn-primary,.btn-main,.btn-modern,.btn-app,.btn-save,.btn-publish,.btn-cta{
  background:var(--theme-gradient)!important;
  color:#fff!important;
  border:0!important;
  border-radius:999px!important;
  font-weight:850!important;
  box-shadow:var(--theme-button-shadow)!important;
}
.btn-primary:hover,.btn-main:hover,.btn-modern:hover,.btn-app:hover{filter:saturate(1.06) brightness(1.02);transform:translateY(-1px)}
.btn-outline-primary,.btn-outline-secondary,.btn-light,.btn-soft,.btn-icon,.icon-btn{
  background:var(--theme-soft)!important;
  color:var(--theme-primary)!important;
  border:1px solid var(--theme-border-strong)!important;
  border-radius:999px!important;
  font-weight:800!important;
}
.btn-danger,.btn-outline-danger{border-radius:999px!important;font-weight:800!important}

/* Formulaires */
.form-control,.form-select,.input-group-text,textarea,input[type="text"],input[type="email"],input[type="tel"],input[type="search"],input[type="url"],input[type="number"],input[type="date"]{
  background:var(--theme-input)!important;
  border:1px solid var(--theme-border-strong)!important;
  color:var(--theme-text)!important;
  border-radius:18px!important;
  box-shadow:none!important;
}
.form-control:focus,.form-select:focus,textarea:focus,input:focus{
  border-color:var(--theme-primary)!important;
  box-shadow:0 0 0 .22rem var(--theme-primary-glow)!important;
}
.form-label,label{color:var(--theme-text)!important;font-weight:800!important}
.form-text,.small-help{color:var(--theme-muted)!important}

/* Badges / pills */
.badge,.rounded-pill,.module-badge,.chip,.tag,.skill-badge,.status-badge{
  border-radius:999px!important;
  font-weight:800!important;
  letter-spacing:-.01em;
}
.badge.bg-light,.chip,.tag,.skill-badge{
  background:var(--theme-soft)!important;
  color:var(--theme-primary)!important;
  border:1px solid var(--theme-border-strong)!important;
}

/* Tableaux / listes */
.table{color:var(--theme-text)!important}
.table thead th{background:var(--theme-soft)!important;color:var(--theme-text)!important;border:0!important}
.table tbody tr{border-color:var(--theme-border)!important}
.list-group-item{background:transparent!important;color:var(--theme-text)!important;border-color:var(--theme-border)!important}

/* Modales Bootstrap : empêche les fonds gris bloquants visuellement trop lourds */
.modal-backdrop.show{opacity:.36!important;backdrop-filter:blur(2px)}
.modal-content{overflow:hidden!important}
.modal-header,.modal-footer{border-color:var(--theme-border)!important;background:rgba(255,255,255,.18)!important}
.modal-title{font-weight:950!important;color:var(--theme-text)!important}

/* Flux local / index2 */
.feed-card,.post-card{transition:transform .18s ease, box-shadow .18s ease}
.feed-card:hover,.post-card:hover{transform:translateY(-1px)}
.feed-avatar,.avatar,.profile-avatar,.company-avatar{
  background:var(--theme-gradient)!important;color:#fff!important;border-radius:22px!important;font-weight:950!important;
}
.feed-actions .btn,.post-actions .btn{height:42px;border-radius:999px!important}
.post-menu,.dropdown-menu.show{z-index:1085!important}

/* Dates agenda événements */
.event-date,.date-pill,.agenda-date,.event-calendar{
  background:var(--theme-gradient)!important;
  color:#fff!important;
  border-radius:20px!important;
  box-shadow:var(--theme-button-shadow)!important;
  border:0!important;
}
.event-date .month,.agenda-date .month,.date-pill .month{text-transform:uppercase;font-weight:950;letter-spacing:.04em}

/* Pages spécifiques */
.page-head h1,.hero-box h1,.section-title,.fw-black{color:var(--theme-text)!important;letter-spacing:-.035em}
.eyebrow,.section-kicker,.mini-title{color:var(--theme-primary)!important;font-weight:950!important;text-transform:uppercase;letter-spacing:.05em}
.kpi,.stat-number,.metric-value{color:var(--theme-primary)!important;font-weight:950!important}

/* Alertes colorées propres */
.alert-info{background:var(--theme-soft)!important;border-color:var(--theme-border-strong)!important;color:var(--theme-primary)!important;border-radius:22px!important}
.alert-success{background:rgba(16,185,129,.12)!important;border-color:rgba(16,185,129,.22)!important;color:#047857!important;border-radius:22px!important}
.alert-warning{background:rgba(245,158,11,.14)!important;border-color:rgba(245,158,11,.25)!important;color:#92400e!important;border-radius:22px!important}
.alert-danger{background:rgba(239,68,68,.12)!important;border-color:rgba(239,68,68,.22)!important;color:#991b1b!important;border-radius:22px!important}

/* Mobile : densité app sans toucher au header */
@media (max-width: 767.98px){
  .card,.glass-card,.app-card,.feed-card,.post-card,.page-head,.hero-box{border-radius:22px!important}
  .dropdown-menu{border-radius:22px!important}
  .btn,.form-control,.form-select{min-height:44px}
  .container,.container-fluid{padding-left:12px!important;padding-right:12px!important}
}
