.mcg-import-cv-btn{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:48px;
  padding:12px 18px;
  border:0;
  border-radius:16px;
  background:linear-gradient(135deg,#0ea5e9,#2563eb);
  color:#fff !important;
  font-weight:800;
  white-space:nowrap;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(15,23,42,.10);
}

#mcgCvImporterModal{
  position:fixed !important;
  inset:0 !important;
  z-index:99999 !important;
  display:none;
  width:100vw !important;
  height:100vh !important;
  overflow:hidden auto !important;
  background:rgba(15,23,42,.62);
}

#mcgCvImporterModal.show{
  display:flex !important;
  align-items:center;
  justify-content:center;
  padding:14px;
}

#mcgCvImporterModal .modal-dialog{
  width:min(94vw,760px);
  max-width:760px;
  margin:0 auto !important;
}

#mcgCvImporterModal .modal-content,
#mcgCvImporterModal .modal-header,
#mcgCvImporterModal .modal-body,
#mcgCvImporterModal .modal-footer{
  background:#ffffff !important;
}

#mcgCvImporterModal .modal-body{
  padding:1.5rem;
}

#mcgCvImporterModal .modal-footer{
  border-top:1px solid #e5e7eb;
  padding:1rem 1.5rem;
}

#mcgCvImporterModal .modal-header{
  border-bottom:1px solid #e5e7eb;
  padding:1rem 1.5rem;
}

.mcg-dropzone{
  width:100%;
  min-height:190px;
  border:2px dashed rgba(13,110,253,.35);
  border-radius:1.25rem;
  background:linear-gradient(180deg,#fff,#f8fbff);
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  gap:.5rem;
  padding:1.5rem;
  cursor:pointer;
}

.mcg-dropzone:hover,
.mcg-dropzone.is-dragover{
  border-color:rgba(13,110,253,.8);
  transform:translateY(-2px);
  box-shadow:0 14px 35px rgba(13,110,253,.12);
}

.mcg-dropzone i{
  font-size:2.4rem;
  color:#0d6efd;
}

.mcg-dropzone input{
  display:none;
}

.mcg-import-progress,
.mcg-import-preview{
  margin-top:1rem;
}

.mcg-import-preview pre{
  max-height:320px;
  overflow:auto;
  border-radius:.9rem;
  background:#0f172a;
  color:#e2e8f0;
  padding:1rem;
  font-size:.82rem;
}

@media (max-width:1200px){
  .mcg-import-cv-btn{
    flex:0 0 58px;
    width:58px;
    min-width:58px;
    max-width:58px;
    height:58px;
    min-height:58px;
    padding:0 !important;
    border-radius:18px;
  }

  .mcg-import-cv-btn span{
    display:none !important;
  }
}

@media (max-width:576px){
  #mcgCvImporterModal .modal-dialog{
    width:94vw;
  }

  .mcg-dropzone{
    min-height:155px;
    padding:1rem;
  }
}
/* V7 - Spinner d'attente PDF/Image + verrouillage du modal pendant analyse */
.mcg-import-progress{
  position:relative;
  border:1px solid rgba(37,99,235,.10);
  border-radius:1.1rem;
  background:linear-gradient(180deg,#ffffff,#f8fbff);
  padding:1rem;
  box-shadow:0 14px 35px rgba(15,23,42,.06);
}

.mcg-import-loader{
  display:flex;
  align-items:center;
  gap:.9rem;
  margin-bottom:.85rem;
}

.mcg-import-spinner{
  width:46px;
  height:46px;
  min-width:46px;
  border-radius:50%;
  border:4px solid rgba(37,99,235,.16);
  border-top-color:#7c3aed;
  border-right-color:#2563eb;
  animation:mcgCvSpin .82s linear infinite;
  box-shadow:0 0 0 6px rgba(124,58,237,.05);
}

.mcg-import-loader-title{
  display:block;
  font-weight:900;
  color:#0f172a;
  line-height:1.2;
}

.mcg-import-loader-subtitle{
  display:block;
  margin-top:.18rem;
  color:#64748b;
  font-size:.9rem;
  line-height:1.35;
}

#mcgCvImporterModal.mcg-is-analyzing .mcg-dropzone{
  pointer-events:none;
  opacity:.72;
  filter:saturate(.75);
}

#mcgCvImporterModal.mcg-is-analyzing .modal-footer .btn:not(#mcgImportSubmitBtn){
  opacity:.65;
}

#mcgImportSubmitBtn.is-loading{
  position:relative;
  pointer-events:none;
}

#mcgImportSubmitBtn.is-loading i{
  display:none;
}

#mcgImportSubmitBtn.is-loading::before{
  content:"";
  width:1rem;
  height:1rem;
  margin-right:.45rem;
  border-radius:50%;
  border:2px solid rgba(255,255,255,.45);
  border-top-color:#fff;
  display:inline-block;
  vertical-align:-.18rem;
  animation:mcgCvSpin .82s linear infinite;
}

@keyframes mcgCvSpin{
  to{ transform:rotate(360deg); }
}

@media (max-width:576px){
  .mcg-import-loader{
    align-items:flex-start;
  }
  .mcg-import-spinner{
    width:40px;
    height:40px;
    min-width:40px;
  }
  .mcg-import-loader-subtitle{
    font-size:.82rem;
  }
}


/* V8 - le spinner ne doit jamais apparaitre avant le clic sur Analyser */
.mcg-import-progress.d-none,
#mcgCvImporterModal:not(.mcg-is-analyzing) .mcg-import-progress{
  display:none !important;
}
#mcgCvImporterModal.mcg-is-analyzing .mcg-import-progress:not(.d-none){
  display:block !important;
}
