:root{
  --oma-pink:#e6c8c8;
  --oma-pink-dark:#dfc0c0;
  --oma-olive:#66722c;
  --oma-olive-dark:#55601f;
  --oma-lime:#c7ef52;
  --oma-text:#2f2a24;
  --oma-white:#fff;
  --oma-panel:#687531;
  --oma-grass:#66772f;
}
.oma-wizard-shell{max-width:1280px;margin:0 auto;color:var(--oma-text);font-family:Arial,Helvetica,sans-serif;overflow:hidden}
.oma-wizard-intro{padding:26px 20px 22px;text-align:center}
.oma-wizard-intro h3{margin:0 0 8px;font-size:clamp(24px,3vw,38px);font-weight:800;color:#111}.oma-wizard-intro h3 span{color:#617326}.oma-wizard-intro p{margin:0;font-size:15px;color:#675e58}
.oma-wizard-form{max-width:920px;margin:0 auto;padding:0 18px 18px}
.oma-step{display:none}.oma-step.is-active{display:block}
.oma-cards-row{display:grid;gap:60px;justify-content:center;align-items:stretch;margin:0 auto 48px}.oma-cards-row--2{grid-template-columns:repeat(2,minmax(240px,310px));max-width:700px}.oma-cards-row--3{grid-template-columns:repeat(3,minmax(180px,1fr));max-width:760px}.oma-cards-row--gallery{margin-top:18px}
.oma-visual-card,.oma-gallery-card{background:var(--oma-olive);border-radius:16px;padding:8px;box-shadow:0 10px 28px rgba(0,0,0,.12)}
.oma-visual-card{display:block;cursor:pointer;position:relative;transition:transform .2s ease,box-shadow .2s ease}.oma-visual-card:hover{transform:translateY(-2px)}
.oma-visual-card input{position:absolute;opacity:0;pointer-events:none}
.oma-visual-card__media,.oma-gallery-card{overflow:hidden}.oma-visual-card__media img,.oma-gallery-card img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px;background:#d7d7d7}
.oma-visual-card__footer{display:flex;align-items:center;gap:10px;color:#fff;padding:13px 12px 10px;font-weight:700}
.oma-radio-dot{width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 0 0 2px rgba(255,255,255,.3) inset;flex:0 0 12px}
.oma-visual-card input:checked + .oma-visual-card__media + .oma-visual-card__footer .oma-radio-dot{background:var(--oma-lime)}
.oma-visual-card__title{font-size:25px;line-height:1.15}
.oma-visual-card--sex .oma-visual-card__title,.oma-visual-card--activity .oma-visual-card__title{font-size:20px}
.oma-pill-field,.oma-pill-choice{max-width:610px;margin:0 auto;background:var(--oma-panel);color:#fff;border-radius:14px;padding:14px 18px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:center}
.oma-pill-field label,.oma-pill-choice__label{font-weight:700;font-size:18px;line-height:1.2; color:#fff !important;}
.oma-pill-field input[type="date"],.oma-pill-field input[type="month"],.oma-pill-field input[type="text"],.oma-pill-field input[type="number"],#oma_animal_name{border:1px solid rgba(255,255,255,.55);background:#fff;border-radius:4px;min-height:40px;padding:8px 12px;color:#222;flex:1 1 220px;max-width:320px}
.oma-pill-field--weight input[type="number"]{max-width:140px;flex:0 1 140px}.oma-pill-field__suffix{font-weight:500}
.oma-pill-choice label,.oma-inline-radios label,.oma-sensitivity-panel__body label,.oma-save-profile-checkbox{display:inline-flex;align-items:center;gap:8px;color:#fff;font-weight:700}
.oma-pill-choice input,.oma-inline-radios input,.oma-sensitivity-panel__body input,.oma-save-profile-checkbox input{accent-color:var(--oma-lime)}
.oma-sensitivity-panel{max-width:700px;margin:0 auto 22px;background:var(--oma-panel);border-radius:16px;padding:16px 18px;color:#fff}
.oma-sensitivity-panel__head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:12px}.oma-sensitivity-panel__head strong{display:block;font-size:22px}.oma-sensitivity-panel__head small{display:block;font-size:14px;opacity:.9}.oma-inline-radios{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.oma-sensitivity-panel__body{background:var(--oma-pink);border-radius:14px;padding:16px;color:#5e5a49;display:grid;gap:12px}.oma-sensitivity-panel__body label{color:#5e5a49;font-weight:600}
.oma-save-profile-box{max-width:700px;margin:10px auto 22px;color:#3f382f}.oma-save-profile-box p{margin:8px 0 0;font-size:13px;line-height:1.4}.oma-save-profile-checkbox{color:#2a261e;font-weight:700}
.oma-login-note{text-align:center;margin:10px auto 22px}
.oma-step-actions{display:flex;justify-content:center;align-items:center;margin:14px 0 10px}
.oma-btn{display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:999px;padding:16px 34px;font-weight:800;text-transform:uppercase;cursor:pointer;line-height:1;text-decoration:none}
.oma-btn--primary{background:var(--oma-lime);color:#243009;box-shadow:0 0 0 3px #809024 inset,0 8px 20px rgba(0,0,0,.08)}
.oma-btn--submit{background:var(--oma-lime);color:#243009;box-shadow:0 0 0 3px #809024 inset,0 8px 20px rgba(0,0,0,.08);min-width:min(100%,540px)}
.oma-progress{display:grid;grid-template-columns:repeat(6,1fr);align-items:start;gap:0;max-width:760px;margin:10px auto 18px}
.oma-progress-step{background:none;border:none;padding:0;margin:0;cursor:pointer;color:#000;text-align:center;position:relative}.oma-progress-step__line{position:absolute;top:25px;left:-50%;right:50%;height:3px;background:var(--oma-olive)}.oma-progress-step:first-child .oma-progress-step__line{display:none}
.oma-progress-step__icon-wrap{position:relative;width:50px;height:50px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--oma-pink);z-index:1}
.oma-progress-step__icon{width:50px;height:50px;object-fit:contain;display:block}
.oma-progress-step__label{display:block;margin-top:8px;font-size:12px;font-weight:700;line-height:1.2}
.oma-results{max-width:1080px;margin:28px auto;padding:0 18px 20px}.oma-results .products{margin-top:0}.oma-results .product{background:rgba(255,255,255,.72);padding:12px;border-radius:18px}
.oma-saved-animals-filter{max-width:980px;margin:24px auto 0;padding:0 18px}.oma-saved-animals-filter p{margin:0 0 10px}.oma-saved-animals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}.oma-saved-animal-card{display:block;padding:14px;border-radius:16px;background:rgba(255,255,255,.76);text-decoration:none;color:inherit}.oma-saved-animal-card img{width:58px;height:58px;border-radius:50%;object-fit:cover;display:block;margin-bottom:10px}.oma-saved-animal-card em{display:block;margin-top:8px;font-style:normal;color:var(--oma-olive-dark);font-weight:700}
.oma-benefits{margin-top:28px;padding:26px 18px;background:var(--oma-grass);display:grid;grid-template-columns:repeat(4,1fr);gap:18px;color:#fff}.oma-benefit{text-align:center}.oma-benefit__icon{display:block;font-size:30px;margin-bottom:10px;opacity:.85}.oma-benefit strong{display:block;font-size:28px;line-height:1.15;font-weight:700}
@media (max-width:900px){.oma-cards-row--2,.oma-cards-row--3,.oma-benefits{grid-template-columns:repeat(2,1fr)}.oma-benefit strong{font-size:22px}}
@media (max-width:640px){
  .oma-wizard-banner{min-height:210px}
  .oma-wizard-intro{padding-top:18px}
  .oma-cards-row--2,.oma-cards-row--3,.oma-benefits{grid-template-columns:1fr}
  .oma-visual-card__title{font-size:22px}
  .oma-pill-field,.oma-pill-choice,.oma-sensitivity-panel{padding:14px}
  .oma-pill-field label,.oma-pill-choice__label,.oma-sensitivity-panel__head strong{font-size:18px}
  .oma-benefit strong{font-size:20px}



  .oma-progress {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: flex-start !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: 360px !important;
    margin: 18px auto 16px !important;
    padding: 0 14px !important;
    position: relative !important;
  }

  /* Trait vert centré sur les petits pictos */
  .oma-progress::before {
    content: "";
    position: absolute;
    top: 14px;
    left: 34px;
    right: 34px;
    height: 3px;
    background: #6b7831;
    z-index: 0;
  }

  .oma-progress-step {
    flex: 1 1 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    position: relative !important;
    z-index: 1 !important;
    min-width: 0 !important;
  }

  .oma-progress-step__line {
    display: none !important;
  }

  .oma-progress-step__label {
    display: none !important;
  }

  /* Pictos non actifs */
  .oma-progress-step__icon-wrap,
  .oma-progress-step__icon {
    width: 28px !important;
    height: 28px !important;
  }

  .oma-progress-step__icon-wrap {
    background: #ead2c8 !important;
    border: 2px solid #6b7831 !important;
    border-radius: 50% !important;
    position: relative !important;
    z-index: 2 !important;
  }

  /* Picto actif plus grand, centré sur le même axe */
  .oma-progress-step.is-current .oma-progress-step__icon-wrap,
  .oma-progress-step[aria-current="step"] .oma-progress-step__icon-wrap {
    width: 42px !important;
    height: 42px !important;
    background: #6b7831 !important;
    border-color: #6b7831 !important;
    margin-top: -7px !important;
  }

  .oma-progress-step.is-current .oma-progress-step__icon,
  .oma-progress-step[aria-current="step"] .oma-progress-step__icon {
    width: 42px !important;
    height: 42px !important;
  }

  /* Titre uniquement sous le picto actif */
  .oma-progress-step.is-current .oma-progress-step__label,
  .oma-progress-step[aria-current="step"] .oma-progress-step__label {
    display: block !important;
    margin-top: 4px !important;
    font-size: 9px !important;
    line-height: 1.1 !important;
    font-weight: 800 !important;
    text-align: center !important;
    color: #111 !important;
    white-space: nowrap !important;
  }
}

.oma-progress-step:hover{
  background-color: transparent !important;
  border-color: transparent !important; 
}

#oma_gestation_wrap[hidden],
#oma_sensitivities_wrap[hidden],
#oma_animal_name_wrap[hidden] {
    display: none !important;
}

.oma-loader {
    text-align: center;
    padding: 30px 15px;
    font-weight: 700;
    color: #53672c;
}

.oma-loader__spinner {
    width: 46px;
    height: 46px;
    margin: 0 auto 12px;
    border: 5px solid rgba(83, 103, 44, 0.25);
    border-top-color: #53672c;
    border-radius: 50%;
    animation: omaSpin 0.8s linear infinite;
}

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


@media (max-width: 640px) {

  /* Uniquement la galerie avec les 3 images âge/race */
  .oma-cards-row.oma-cards-row--gallery {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: stretch !important;
    gap: 8px !important;
    grid-template-columns: none !important;
  }

  .oma-cards-row.oma-cards-row--gallery .oma-gallery-card {
    flex: 0 0 calc(33.333% - 6px) !important;
    max-width: calc(33.333% - 6px) !important;
    padding: 4px !important;
    box-sizing: border-box !important;
  }

  .oma-cards-row.oma-cards-row--gallery .oma-gallery-card img {
    width: 100% !important;
    height: 80px !important;
    object-fit: cover !important;
    border-radius: 10px !important;
    display: block !important;
  }
}

/* À placer après */
.oma-pill-choice[hidden],
.oma-pill-field[hidden],
[hidden] {
    display: none !important;
}
.oma-birthdate-help{margin:14px auto 14px;text-align:center;font-size:14px;line-height:1.4;max-width:760px}
.oma-pill-field--day{max-width:460px;margin-left:auto;margin-right:auto}
.oma-pill-field--day input[type="number"]{max-width:120px}
