/* ccva-adstrack-sve.css */
/* Styles SVE extraits de ccva-adstrack.css pour chargement conditionnel */

    .adstracksve-modal.modal.fade .modal-dialog{
      transform:translateY(16px) scale(.98);
      transition:transform .35s var(--ease-out), opacity .35s var(--ease-out);
      opacity:0;
    }
    .adstracksve-modal.modal.show .modal-dialog{
      transform:translateY(0) scale(1);
      opacity:1;
    }
    .adstracksve-start{
      transition:transform .35s var(--ease-out), opacity .35s var(--ease-out), filter .35s var(--ease-out);
    }
    .adstracksve-start.is-disabled{
      opacity:.6;
      transform:translateY(2px);
      filter:grayscale(.1);
    }
    .post-template-single-adstracksve-formulaire .alert-sve{
      border:none;
      border-left:5px solid var(--ccva-mustard);
      background:rgba(216,171,20,.12);
      color:rgba(0,50,51,.92);
      border-radius:12px;
      box-shadow:var(--shadow-sm);
    }
    .post-template-single-adstracksve-formulaire .alert-sve h4{
      margin:0 0 .9rem;
      font-weight:900;
      color:rgba(0,50,51,.96);
      display:flex;
      align-items:center;
      gap:.6rem;
    }
    .post-template-single-adstracksve-formulaire .alert-sve h4 i{
      color:var(--ccva-mustard);
    }
    .post-template-single-adstracksve-formulaire .sve-badges{
      display:flex;
      flex-wrap:wrap;
      gap:.6rem;
      margin-bottom:1rem;
    }
    .post-template-single-adstracksve-formulaire .sve-badges .ccva-pill i{
      color:var(--ccva-mustard);
      margin-right:.35rem;
    }
    .post-template-single-adstracksve-formulaire .sve-list{
      margin:0;
      padding-left:1.2rem;
      list-style:none;
    }
    .post-template-single-adstracksve-formulaire .sve-list li{
      position:relative;
      margin-bottom:.65rem;
      line-height:1.5;
    }
    .post-template-single-adstracksve-formulaire .sve-list li::before{
      content:"\2192";
      position:absolute;
      left:-1.2rem;
      color:var(--ccva-mustard);
      font-weight:900;
    }
    #adstracksve-formulaire #submitButton{
      transition:transform .35s var(--ease-out), opacity .35s var(--ease-out), filter .35s var(--ease-out);
    }
    #adstracksve-formulaire #submitButton:disabled,
    #adstracksve-formulaire .adstracksve-start:disabled{
      opacity:.6 !important;
      transform:translateY(2px) !important;
      filter:grayscale(.1) !important;
      box-shadow:var(--shadow-sm) !important;
      background:rgba(216,171,20,0.18) !important;
      border-color:rgba(216,171,20,0.45) !important;
      color:rgba(0,50,51,0.96) !important;
    }
    .adstracksve-files .form-group.row{
      margin-left:0;
      margin-right:0;
    }
    .adstracksve-files .col-sm-2{
      display:flex;
      justify-content:flex-end;
    }
    .adstracksve-files .file-remove-col{
      flex:0 0 100%;
      max-width:100%;
      justify-content:center !important;
      margin-top:.85rem;
    }
    .adstracksve-files .file-remove-col .remove-file-btn{
      margin:0 auto;
    }
    .adstracksve-files .remove-file-btn{
      display:none;
      max-width:100%;
      white-space:nowrap;
    }
    .post-template-single-adstracksve-formulaire .page-card-inner :is(h2, h3)::after{
      display:none;
      content:none;
    }
    #adstracksve-formulaire #acceptTerms:checked{
      background-color:var(--ccva-success);
      border-color:var(--ccva-success);
      box-shadow:0 0 0 4px rgba(var(--ccva-success-rgb), .18);
    }
    #adstracksve-formulaire #declineTerms:checked{
      background-color:var(--ccva-danger);
      border-color:var(--ccva-danger);
      box-shadow:0 0 0 4px rgba(var(--ccva-danger-rgb), .18);
    }
    #adstracksve-formulaire .verification-checkbox + .form-check-label{
      transition:color .3s var(--ease-out), font-weight .3s var(--ease-out);
    }
    #adstracksve-formulaire .verification-checkbox:checked + .form-check-label{
      font-weight:800;
      color:var(--ccva-dark);
    }
    #adstracksve-formulaire .verification-checkbox{
      border-color:rgba(var(--ccva-success-rgb), .5);
      accent-color:var(--ccva-success);
    }
    #adstracksve-formulaire .verification-checkbox:checked{
      background-color:var(--ccva-success);
      border-color:var(--ccva-success);
      box-shadow:0 0 0 4px rgba(var(--ccva-success-rgb), .18);
    }

    /* Step validation: show invalid only when JS adds .is-invalid (next buttons flow). */
    #adstracksve-formulaire :is(input, select, textarea).is-invalid{
      border-color:rgba(var(--ccva-danger-rgb), .62) !important;
      box-shadow:inset 3px 0 0 var(--ccva-danger), 0 0 0 .08rem rgba(var(--ccva-danger-rgb), .12) !important;
    }
    #adstracksve-formulaire .form-check-input.is-invalid{
      border-color:rgba(var(--ccva-danger-rgb), .72) !important;
      box-shadow:0 0 0 4px rgba(var(--ccva-danger-rgb), .16) !important;
    }

    #adstracksve-formulaire .adstracksve-progress{
      background:transparent;
      box-shadow:none;
      border:0;
      height:auto;
      display:flex;
      gap:0;
      flex-wrap:wrap;
      padding:.4rem 0 0;
      overflow:visible;
    }
    #adstracksve-formulaire .adstracksve-progress .progress-bar{
      position:relative;
      flex:1 1 120px;
      width:auto !important;
      min-width:120px;
      background:transparent !important;
      color:rgba(0,72,74,.55) !important;
      font-weight:800;
      letter-spacing:.02em;
      font-size:.82rem;
      text-transform:uppercase;
      padding:2.2rem .85rem 0;
      height:auto;
      text-align:center;
      justify-content:center;
      overflow:visible;
    }
    #adstracksve-formulaire .adstracksve-progress .progress-bar *{
      color:inherit !important;
    }
    #adstracksve-formulaire .adstracksve-progress .progress-bar.bg-custom1,
    #adstracksve-formulaire .adstracksve-progress .progress-bar.bg-custom1.text-white,
    #adstracksve-formulaire .adstracksve-progress .progress-bar.bg-custom1.text-dark{
      color:var(--ccva-teal) !important;
    }
    #adstracksve-formulaire .adstracksve-progress .progress-bar.bg-custom2,
    #adstracksve-formulaire .adstracksve-progress .progress-bar.bg-custom2.text-white,
    #adstracksve-formulaire .adstracksve-progress .progress-bar.bg-custom2.text-dark{
      color:var(--ccva-teal) !important;
    }
    #adstracksve-formulaire .adstracksve-progress .progress-bar.bg-danger,
    #adstracksve-formulaire .adstracksve-progress .progress-bar.bg-danger.text-white,
    #adstracksve-formulaire .adstracksve-progress .progress-bar.bg-danger.text-dark{
      color:var(--ccva-danger) !important;
      font-size:.76rem;
    }
    #adstracksve-formulaire .adstracksve-progress .progress-bar::before{
      content:"";
      position:absolute;
      top:0;
      left:50%;
      width:14px;
      height:14px;
      border-radius:50%;
      background:rgba(15,47,48,.25);
      transform:translateX(-50%);
      box-shadow:0 0 0 6px rgba(15,47,48,.06);
      z-index:1;
    }
    #adstracksve-formulaire .adstracksve-progress .progress-bar::after{
      display:none;
      content:none;
    }
    #adstracksve-formulaire .adstracksve-progress .progress-bar:last-child::after{
      display:none;
    }
    #adstracksve-formulaire .adstracksve-progress .progress-bar.bg-custom2::before,
    #adstracksve-formulaire .adstracksve-progress .progress-bar.completed::before{
      background:var(--ccva-teal);
      box-shadow:0 0 0 6px rgba(var(--ccva-teal-rgb), .18);
    }
    #adstracksve-formulaire .adstracksve-progress .progress-bar.bg-custom1::before{
      background:var(--ccva-mustard);
      box-shadow:0 0 0 6px rgba(var(--ccva-mustard-rgb), .22);
    }
    #adstracksve-formulaire .adstracksve-progress .progress-bar.bg-danger::before{
      background:var(--ccva-danger);
      box-shadow:0 0 0 6px rgba(var(--ccva-danger-rgb), .18);
    }
    #adstracksve-formulaire .adstracksve-progress .progress-bar.bg-custom2,
    #adstracksve-formulaire .adstracksve-progress .progress-bar.bg-custom1{
      color:rgba(0,50,51,.92);
    }
    #adstracksve-formulaire .adstracksve-progress .progress-bar.bg-danger{
      color:var(--ccva-danger);
    }
    #adstracksve-formulaire .adstracksve-progress .progress-bar[data-step="1"]{
      display:none;
    }
    #adstracksve-formulaire h3{
      text-align:center;
      font-weight:800;
    }

    /* Perceptible transition between SVE steps (carousel swaps are JS-instant). */
    #adstracksve-formulaire #formCarousel .carousel-inner{
      position:relative;
      overflow:hidden;
    }
    #adstracksve-formulaire #formCarousel .carousel-item{
      opacity:0;
      transform:translateY(10px) scale(.996);
      will-change:opacity, transform;
    }
    #adstracksve-formulaire #formCarousel .carousel-item.active{
      opacity:1;
      transform:translateY(0) scale(1);
    }
    #adstracksve-formulaire #formCarousel .carousel-item.active.sve-step-enter{
      animation:sveStepIn .42s var(--ease-out);
    }
    @keyframes sveStepIn{
      from{
        opacity:0;
        transform:translateY(10px) scale(.996);
      }
      to{
        opacity:1;
        transform:translateY(0) scale(1);
      }
    }
    @media (prefers-reduced-motion: reduce){
      #adstracksve-formulaire #formCarousel .carousel-item,
      #adstracksve-formulaire #formCarousel .carousel-item.active{
        animation:none !important;
        transition:none !important;
        transform:none !important;
      }
    }

.post-template-single-adstracksve-formulaire .split .mini-card .form-check{
  margin:0;
  padding-left:0;
  display:flex;
  gap:.75rem;
  align-items:flex-start;
}
.post-template-single-adstracksve-formulaire .split .mini-card .form-check-input{
  margin:0;
  flex:0 0 auto;
}
.post-template-single-adstracksve-formulaire .split .mini-card:has(#acceptTerms:checked){
  border-color:rgba(var(--ccva-success-rgb), .5);
  box-shadow:0 0 0 4px rgba(var(--ccva-success-rgb), .14);
}
.post-template-single-adstracksve-formulaire .split .mini-card:has(#declineTerms:checked){
  border-color:rgba(var(--ccva-danger-rgb), .55);
  box-shadow:0 0 0 4px rgba(var(--ccva-danger-rgb), .16);
}

#adstracksve-formulaire .input-group > #message.form-control{
  min-height:320px !important;
  height:320px !important;
  max-height:none !important;
  resize:vertical;
}
