/* CEN V152.17 — navigation institutionnelle et aperçus vidéo intégrés. */

/* ---------- Menu public ---------- */
body.public-layout #public-main-nav.cen-public-nav{
  min-height:68px!important;
  padding:8px clamp(16px,3vw,38px)!important;
  gap:7px!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  border-top:1px solid rgba(8,62,101,.08)!important;
  border-bottom:1px solid #cfdee8!important;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(246,250,253,.98))!important;
  box-shadow:0 10px 28px rgba(4,43,73,.10)!important;
}
body.public-layout #public-main-nav.cen-public-nav>a,
body.public-layout #public-main-nav.cen-public-nav>.public-nav-group>summary{
  display:flex!important;
  min-height:48px!important;
  align-items:center!important;
  justify-content:center!important;
  padding:9px 13px!important;
  border:1px solid transparent!important;
  border-radius:14px!important;
  background:transparent!important;
  color:#123f5c!important;
  font-size:14px!important;
  font-weight:900!important;
  letter-spacing:.005em!important;
  box-shadow:none!important;
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease!important;
}
body.public-layout #public-main-nav.cen-public-nav>a:hover,
body.public-layout #public-main-nav.cen-public-nav>a:focus-visible,
body.public-layout #public-main-nav.cen-public-nav>.public-nav-group>summary:hover,
body.public-layout #public-main-nav.cen-public-nav>.public-nav-group>summary:focus-visible,
body.public-layout #public-main-nav.cen-public-nav>.public-nav-group[open]>summary{
  color:#052f57!important;
  border-color:#bed8e7!important;
  background:linear-gradient(145deg,#edf7fc,#fff)!important;
  box-shadow:0 8px 20px rgba(4,59,94,.10),inset 0 -3px 0 #f2c230!important;
  transform:translateY(-1px)!important;
}
body.public-layout #public-main-nav .public-item-icon{
  display:inline-grid!important;
  width:28px!important;
  height:28px!important;
  flex:0 0 28px!important;
  margin-left:8px!important;
  place-items:center!important;
  border:1px solid #c6dce9!important;
  border-radius:9px!important;
  background:#eef7fb!important;
  color:#075b91!important;
  font-size:14px!important;
  font-weight:950!important;
  line-height:1!important;
  transform:none!important;
}
body.public-layout #public-main-nav .public-nav-caret{
  display:inline-grid!important;
  width:20px!important;
  height:20px!important;
  margin-left:2px!important;
  place-items:center!important;
  color:#54778c!important;
  font-size:11px!important;
  transition:transform .18s ease!important;
}
body.public-layout #public-main-nav .public-nav-group[open]>summary>.public-nav-caret{transform:rotate(180deg)!important}
body.public-layout #public-main-nav .public-nav-group[open]>summary>.public-item-icon{transform:none!important}
body.public-layout #public-main-nav .public-login-link{
  border-color:#e2bd20!important;
  background:linear-gradient(135deg,#f2c230,#ffe574)!important;
  color:#153d2a!important;
  box-shadow:0 7px 18px rgba(209,165,8,.20)!important;
}
body.public-layout #public-main-nav .public-login-link .public-item-icon{
  border-color:rgba(25,65,42,.18)!important;
  background:rgba(255,255,255,.58)!important;
  color:#173f2a!important;
}
body.public-layout #public-main-nav .public-nav-dropdown{
  top:calc(100% + 9px)!important;
  min-width:260px!important;
  padding:9px!important;
  gap:4px!important;
  border:1px solid #c7dbe7!important;
  border-top:4px solid #f2c230!important;
  border-radius:17px!important;
  background:rgba(255,255,255,.985)!important;
  box-shadow:0 22px 50px rgba(3,35,59,.20)!important;
  backdrop-filter:blur(14px)!important;
}
body.public-layout #public-main-nav .public-nav-dropdown>a{
  display:flex!important;
  min-height:47px!important;
  align-items:center!important;
  justify-content:flex-start!important;
  padding:8px 9px 8px 13px!important;
  border:1px solid transparent!important;
  border-radius:11px!important;
  color:#173f58!important;
  font-size:14px!important;
  font-weight:820!important;
  text-decoration:none!important;
}
body.public-layout #public-main-nav .public-nav-dropdown>a>.public-item-icon{margin-left:auto!important}
body.public-layout #public-main-nav .public-nav-dropdown>a:hover,
body.public-layout #public-main-nav .public-nav-dropdown>a:focus-visible{
  border-color:#d3e3ec!important;
  background:linear-gradient(135deg,#eef7fb,#fff9dc)!important;
  color:#052f57!important;
  transform:translateX(2px)!important;
}
body.public-layout #public-main-nav .public-language-wrap{
  min-height:48px!important;
  padding:5px 7px 5px 10px!important;
  border:1px solid #cddde7!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 5px 14px rgba(4,52,83,.06)!important;
}
body.public-layout #public-main-nav .public-language-icon{order:2;margin-left:4px}

/* ---------- Menu interne : icônes à droite ---------- */
body.admin-layout #main-sidebar.side-dashboard{
  background:
    radial-gradient(circle at 85% 8%,rgba(242,194,48,.18),transparent 24%),
    linear-gradient(180deg,#042f53 0%,#064b7c 52%,#052f57 100%)!important;
  border-right:1px solid rgba(255,255,255,.15)!important;
  box-shadow:18px 0 48px rgba(3,27,47,.30)!important;
}
body.admin-layout #main-sidebar .side-brand{
  padding:10px!important;
  border:1px solid rgba(255,255,255,.13)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.07)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10)!important;
}
body.admin-layout #main-sidebar .side-menu-search{
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.10)!important;
}
body.admin-layout #main-sidebar .cen-v125-navigation{gap:7px!important}
body.admin-layout #main-sidebar .cen-v125-navigation>.side-menu-group{
  margin:0 3px 7px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:15px!important;
  background:rgba(255,255,255,.055)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055)!important;
}
body.admin-layout #main-sidebar .cen-v125-navigation>.side-menu-group[open]{
  border-color:rgba(242,194,48,.48)!important;
  background:rgba(255,255,255,.10)!important;
  box-shadow:0 9px 24px rgba(2,25,43,.16),inset 3px 0 0 #f2c230!important;
}
body.admin-layout #main-sidebar .cen-v125-navigation :is(a,.side-menu-group>summary){
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  width:100%!important;
  box-sizing:border-box!important;
  text-decoration:none!important;
  transition:background .16s ease,transform .16s ease,color .16s ease!important;
}
body.admin-layout #main-sidebar .cen-v125-navigation .side-menu-group>summary{
  min-height:53px!important;
  padding:10px 11px 10px 14px!important;
  border-radius:14px!important;
  background:transparent!important;
  color:#fff!important;
}
body.admin-layout #main-sidebar .cen-v125-navigation .side-submenu{
  padding:4px 7px 9px!important;
  border-top:1px solid rgba(255,255,255,.08)!important;
}
body.admin-layout #main-sidebar .cen-v125-navigation .side-submenu>a,
body.admin-layout #main-sidebar .cen-v125-navigation>.cen-nav-home,
body.admin-layout #main-sidebar .cen-v125-navigation .cen-nav-utility>a{
  min-height:44px!important;
  margin:3px 0!important;
  padding:7px 8px 7px 12px!important;
  border:1px solid transparent!important;
  border-radius:11px!important;
  color:#edf7fd!important;
  background:transparent!important;
  font-size:13.5px!important;
  font-weight:760!important;
}
body.admin-layout #main-sidebar .cen-v125-navigation :is(a,.side-menu-group>summary)>span:first-child{
  order:2!important;
  display:inline-grid!important;
  width:30px!important;
  height:30px!important;
  min-width:30px!important;
  margin-left:auto!important;
  place-items:center!important;
  border:1px solid rgba(255,226,111,.36)!important;
  border-radius:9px!important;
  background:rgba(255,255,255,.10)!important;
  color:#ffe36f!important;
  font-size:14px!important;
  line-height:1!important;
  opacity:1!important;
}
body.admin-layout #main-sidebar .cen-v125-navigation :is(a,.side-menu-group>summary)>b{
  order:3!important;
  width:17px!important;
  margin-left:1px!important;
  color:#b9d8ea!important;
  text-align:center!important;
}
body.admin-layout #main-sidebar .cen-v125-navigation .side-submenu>a:hover,
body.admin-layout #main-sidebar .cen-v125-navigation .side-submenu>a:focus-visible,
body.admin-layout #main-sidebar .cen-v125-navigation .cen-nav-utility>a:hover,
body.admin-layout #main-sidebar .cen-v125-navigation .cen-nav-utility>a:focus-visible{
  border-color:rgba(255,255,255,.15)!important;
  background:rgba(255,255,255,.12)!important;
  color:#fff!important;
  transform:translateX(2px)!important;
}
body.admin-layout #main-sidebar .cen-v125-navigation a.active{
  border-color:rgba(242,194,48,.42)!important;
  background:linear-gradient(90deg,rgba(242,194,48,.22),rgba(255,255,255,.10))!important;
  color:#fff!important;
  box-shadow:inset 3px 0 0 #f2c230!important;
}

/* ---------- Aperçus / extraits vidéo ---------- */
.cen-home-videos .public-video-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))!important;
  gap:18px!important;
}
.cen-home-videos .public-video-card{
  position:relative!important;
  border:1px solid #cbdde8!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 14px 34px rgba(4,45,73,.11)!important;
  isolation:isolate!important;
}
.cen-home-videos .public-video-card::before{
  content:'APERÇU VIDÉO';
  position:absolute;
  top:11px;
  left:11px;
  z-index:3;
  padding:5px 9px;
  border:1px solid rgba(255,255,255,.32);
  border-radius:999px;
  background:rgba(3,35,60,.82);
  color:#fff;
  font-size:10px;
  font-weight:950;
  letter-spacing:.08em;
  pointer-events:none;
}
.cen-home-videos .public-video-card :is(iframe,video){
  display:block!important;
  width:100%!important;
  aspect-ratio:16/9!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  border:0!important;
  background:#061b2d!important;
  object-fit:contain!important;
}
.cen-home-videos .public-video-placeholder{aspect-ratio:16/9!important;min-height:0!important}
.cen-home-videos .public-video-card-body{padding:15px!important;gap:9px!important}
.cen-home-videos .public-video-card h3{font-size:1rem!important;line-height:1.35!important}

@media (min-width:981px) and (hover:hover){
  body.public-layout #public-main-nav .public-nav-group:hover>.public-nav-dropdown,
  body.public-layout #public-main-nav .public-nav-group:focus-within>.public-nav-dropdown{display:grid!important}
}

@media (max-width:980px){
  body.public-layout #public-main-nav.cen-public-nav{
    justify-content:flex-start!important;
    padding:76px 13px 22px!important;
    gap:7px!important;
    background:linear-gradient(180deg,#fff,#f4f9fc)!important;
  }
  body.public-layout #public-main-nav.cen-public-nav>a,
  body.public-layout #public-main-nav.cen-public-nav>.public-nav-group>summary{
    width:100%!important;
    min-height:54px!important;
    justify-content:flex-start!important;
    padding:9px 11px 9px 15px!important;
    border-color:#d7e4ec!important;
    background:#fff!important;
    box-shadow:0 5px 14px rgba(4,47,76,.055)!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
  }
  body.public-layout #public-main-nav .public-item-icon{margin-left:auto!important}
  body.public-layout #public-main-nav .public-nav-caret{margin-left:2px!important}
  body.public-layout #public-main-nav .public-nav-dropdown{
    position:static!important;
    width:100%!important;
    min-width:0!important;
    margin:5px 0 8px!important;
    padding:5px 5px 5px 12px!important;
    border:0!important;
    border-left:3px solid #f2c230!important;
    border-radius:0 13px 13px 0!important;
    background:#edf5f9!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
  }
  body.public-layout #public-main-nav .public-nav-dropdown>a{pointer-events:auto!important;touch-action:manipulation!important}
  body.public-layout #public-main-nav .public-language-wrap{width:100%!important;box-sizing:border-box!important}
}

@media (max-width:620px){
  .cen-home-videos .public-video-grid{grid-template-columns:1fr!important}
  .cen-home-videos .public-video-card{border-radius:15px!important}
  body.admin-layout #main-sidebar .cen-v125-navigation .side-submenu>a{font-size:13px!important}
}
