/* CarVital ID v28.0.93 — stabilité du Passeport, des onglets et du visuel véhicule. */
.cv-unified-menu-v38[data-cv-ui-stability="70"],
.cv-unified-entretien-direct-v67 {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.cv-unified-entretien-direct-v67 > .cv-unified-trigger-v67 {
  width: 100%;
  appearance: none;
}

.cv-unified-entretien-direct-v67 > .cv-unified-panel-v38 {
  grid-column: 1 / -1;
  width: 100%;
}

.cv-unified-entretien-direct-v67 > .cv-unified-panel-v38[hidden] {
  display: none !important;
}

.cv-unified-entretien-direct-v67 > .cv-unified-trigger-v67[aria-expanded="true"] {
  border-color: var(--cv-accent-border-strong) !important;
}

.cv-unified-entretien-direct-v67 > .cv-unified-trigger-v67[aria-expanded="true"] > .home-summary-arrow-v28 {
  transform: rotate(90deg);
}

.cv-home-vehicle-photo-v40 .vehicle-stage {
  background: radial-gradient(circle at 50% 65%, rgba(174,234,43,.13), transparent 48%), linear-gradient(145deg,#171c13,#0c0f09) !important;
}

.cv-home-vehicle-photo-v40 .vehicle-stage > [data-catalog-image] {
  display: block !important;
}

.cv-home-vehicle-photo-v40 .vehicle-stage > .carfb {
  display: flex !important;
}

.cv-home-vehicle-photo-v40 .vehicle-stage.cv-catalog-ready-v70 > .carfb {
  display: none !important;
}

.cv-home-vehicle-photo-v40 .vehicle-stage.cv-catalog-error-v70 > [data-catalog-image] {
  display: none !important;
}

.cv-home-vehicle-photo-v40 .vehicle-stage > [data-personal-photo] {
  opacity: 0;
  transition: opacity .18s ease;
}

.cv-home-vehicle-photo-v40 .vehicle-stage > [data-personal-photo].cv-photo-ready-v70 {
  opacity: 1;
}

.screen {
  animation: none !important;
}

#nav .navbtn,
#nav .navbtn .ico,
#nav .navbtn.on .ico {
  transition: none !important;
}

#nav .navbtn.on .ico,
#nav .navbtn:active {
  transform: none !important;
}

#nav .navbtn > span:last-child {
  min-height: 11px;
  white-space: nowrap;
}

.cv-diy-video-only-v70 {
  display: block !important;
  width: 100%;
}

.cv-diy-video-only-v70 > .via-bot-mark,
.cv-diy-video-only-v70 > .via-bot-image {
  display: none !important;
}

.cv-diy-video-only-v70 > div {
  width: 100%;
}

.cv-diy-video-only-v70 .via-official-lockup {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 0 10px !important;
  object-fit: contain;
}

.cv-diy-video-library-v70 {
  margin-top: 10px !important;
}

.cv-diy-video-library-v70 .tutorial-video-list-v28 {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
}

.cv-diy-video-library-v70 .tutorial-video-open-v28 {
  box-sizing: border-box;
  width: 100% !important;
  min-width: 0;
  min-height: 132px !important;
  margin: 0 !important;
  padding: 12px !important;
  display: flex !important;
  flex-direction: column;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 10px;
  text-align: left;
}

.cv-diy-video-library-v70 .tutorial-video-open-v28 > span:first-child {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 5px;
}

.cv-diy-video-library-v70 .tutorial-video-open-v28 b,
.cv-diy-video-library-v70 .tutorial-video-open-v28 small {
  white-space: normal;
  overflow-wrap: anywhere;
}

.cv-diy-video-library-v70 .tutorial-video-play-v28 {
  align-self: flex-end;
}

/* L'en-tête reste sous les barres système et les encoches, sur iPhone comme sur Android. */
@media (max-width: 700px), (max-height: 480px) and (pointer: coarse) {
  .persistent-brand-bar {
    box-sizing: border-box;
    height: calc(50px + env(safe-area-inset-top, 0px)) !important;
    min-height: calc(50px + env(safe-area-inset-top, 0px));
    padding-top: calc(3px + env(safe-area-inset-top, 0px)) !important;
  }

  #nav {
    min-height: 0 !important;
    padding: 3px 4px max(4px, env(safe-area-inset-bottom, 0px)) !important;
    align-items: center !important;
    justify-content: space-around !important;
  }

  #nav .navbtn {
    height: 58px !important;
    min-height: 58px !important;
    max-height: 58px !important;
    padding: 5px 3px 4px !important;
    gap: 3px !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }

  #nav .navbtn:not(.navvia) > .ico,
  #nav .navbtn:not(.navvia) > .cvv-nav-icon,
  #nav .navbtn:not(.navvia) > .cvv-nav-icon svg {
    width: 25px !important;
    height: 25px !important;
  }

  #nav .navbtn > span:last-child {
    min-height: 12px !important;
    font-size: 10px !important;
    line-height: 12px !important;
  }

  #nav .navvia {
    min-width: 0 !important;
    transform: none !important;
    padding: 4px 3px !important;
  }

  #nav .navvia .via-bot-mark,
  #nav .navvia .via-bot-image {
    width: 34px !important;
    height: 34px !important;
  }

  #nav .navvia > span:last-child {
    font-size: 8px !important;
    line-height: 10px !important;
    letter-spacing: .45px !important;
  }
}

@media (max-width: 340px) {
  .cv-unified-entretien-direct-v67 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
  }

  .cv-diy-video-library-v70 .tutorial-video-list-v28 {
    grid-template-columns: 1fr !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cv-home-vehicle-photo-v40 .vehicle-stage > [data-personal-photo] { transition: none; }
}
