.pet-memory67{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:520px;margin:24px auto}.pet-memory67-card{aspect-ratio:1.1;border:2px solid #688ab0;border-radius:16px;background:linear-gradient(135deg,#28476e,#142841);color:#efd692;font-size:48px;cursor:pointer}.pet-memory67-card.matched{border-color:#8ee0bc;background:#1b594b}.pet-memory67-card:disabled{opacity:.8}.pet-growth-badge{position:absolute;top:10px;right:12px;z-index:4;color:#eed294;background:#102942;border:1px solid #d5b46b;border-radius:50%;width:32px;height:32px;text-align:center;line-height:30px;pointer-events:none}.cozy-animal.growth-jeune .living-motion{filter:drop-shadow(0 0 5px #8ed0ad44)}.cozy-animal.growth-adulte .living-motion{filter:drop-shadow(0 0 7px #edc37155)}.cozy-animal.growth-sage .living-motion{filter:drop-shadow(0 0 9px #af9ce866)}@media(max-width:600px){.pet-memory67{gap:10px}.pet-memory67-card{font-size:36px}}

.pet-sequence67{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:24px 0}.pet-sequence67 span{font-size:36px;color:#efd692;background:#142841;border-radius:12px;padding:12px 16px}

.pet-growth67 progress{display:block;width:100%;height:16px;margin-top:8px;accent-color:#d7b96b}.pet-growth-stages67{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;list-style:none;padding:0}.pet-growth-stages67 li,.pet-skills67>div{border:1px solid #3b5879;border-radius:12px;padding:12px;background:#102842}.pet-growth-stages67 li{opacity:.65}.pet-growth-stages67 li.reached{opacity:1;border-color:#c8ac67}.pet-growth-stages67 small,.pet-skills67 span{display:block;margin-top:6px;color:#b9cfe4}.pet-skills67{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.pet-maze67{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;max-width:390px;margin:20px auto;padding:10px;background:#102d36;border-radius:16px}.pet-maze-cell67{aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:#305a50;border-radius:9px;color:#f0d079;font-size:30px}.pet-maze-cell67.wall{background:#29405b;color:#9badbf}.pet-maze-token67{color:#b7ddff;filter:drop-shadow(0 0 5px #79a5eb)}.pet-directions67{display:flex;justify-content:center;gap:10px}.pet-directions67 button{min-width:54px;min-height:54px;font-size:24px}.pet-count67,.pet-number67{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:360px;margin:20px auto}.pet-count67 span{padding:14px;text-align:center;background:#17354e;border-radius:12px;color:#e8ce8a;font-size:35px}.pet-number67 button{min-height:60px;font-size:24px}.pet-history67{margin:22px 0}.pet-history67 summary{cursor:pointer;min-height:44px}.pet-growth67,.pet-history67{overflow-wrap:anywhere}@media(max-width:600px){.pet-growth-stages67{grid-template-columns:repeat(2,minmax(0,1fr))}.pet-skills67{grid-template-columns:1fr}.pet-directions67{gap:6px}.pet-maze-cell67{font-size:25px}}

.pet-maze-cell67{position:relative;overflow:hidden}.pet-maze-companion67{width:100%;height:100%;position:absolute;inset:0}.pet-maze-companion67 .cozy-animal{width:100%!important;height:100%!important;min-height:0!important;max-width:none!important;aspect-ratio:1;margin:0!important}.pet-maze-companion67 .living-motion,.pet-maze-companion67 .cozy-canvas{width:100%!important;height:100%!important}.pet-maze-companion67 .pet-growth-badge,.pet-maze-companion67 .companion-hearts,.pet-maze-companion67 .pet-stroke{display:none}

/* Badge de croissance masqué sur le compagnon.
   La progression et les changements de taille restent actifs. */
.pet-growth-badge{
  display:none!important;
}

/* =========================================================
   EVOLUTION VISUELLE DU COMPAGNON
   Petit -> Jeune -> Adulte -> Sage
   ========================================================= */

.pet-growth-badge{
  position:absolute;
  right:8%;
  top:7%;
  z-index:8;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(255,210,122,.16);
  border:1px solid rgba(255,210,122,.55);
  box-shadow:0 0 22px rgba(255,210,122,.28);
  color:#ffd27a;
  font-size:20px;
  animation:petGrowthBadge 2.8s ease-in-out infinite;
}

.animal-portrait.growth-petit .living-motion{
  transform:scale(.78);
  transform-origin:center bottom;
}

.animal-portrait.growth-jeune .living-motion{
  transform:scale(.90);
  transform-origin:center bottom;
}

.animal-portrait.growth-adulte .living-motion{
  transform:scale(1);
  transform-origin:center bottom;
}

.animal-portrait.growth-sage .living-motion{
  transform:scale(1.12);
  transform-origin:center bottom;
  filter:saturate(1.12) brightness(1.05);
}

.animal-portrait.growth-adulte::after,
.animal-portrait.growth-sage::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:7%;
  width:70%;
  height:18%;
  transform:translateX(-50%);
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(255,210,122,.22),transparent 70%);
  pointer-events:none;
}

.animal-portrait.growth-sage::after{
  width:86%;
  height:25%;
  background:radial-gradient(ellipse,rgba(147,90,255,.30),transparent 68%);
  animation:petSageAura 3s ease-in-out infinite;
}

@keyframes petGrowthBadge{
  0%,100%{transform:scale(1) rotate(0deg)}
  50%{transform:scale(1.08) rotate(5deg)}
}

@keyframes petSageAura{
  0%,100%{
    opacity:.55;
    transform:translateX(-50%) scale(.96);
  }
  50%{
    opacity:1;
    transform:translateX(-50%) scale(1.05);
  }
}

@media(max-width:899px){
  .pet-growth-badge{
    width:32px;
    height:32px;
    font-size:17px;
  }

  .animal-portrait.growth-petit .living-motion{
    transform:scale(.72);
  }

  .animal-portrait.growth-jeune .living-motion{
    transform:scale(.86);
  }

  .animal-portrait.growth-sage .living-motion{
    transform:scale(1.05);
  }
}

/* =========================================================
   EVOLUTION 68 — STADES VISUELS DU COMPAGNON
   ========================================================= */

.animal-portrait[class*="growth-"]{
  position:relative;
  overflow:visible;
}

/* Bandeau du stade */
.pet-stage-ribbon68{
  position:absolute;
  left:50%;
  bottom:4%;
  transform:translateX(-50%);
  z-index:9;
  white-space:nowrap;
  padding:6px 12px;
  border-radius:999px;
  background:rgba(8,22,45,.86);
  border:1px solid rgba(255,210,122,.55);
  color:#ffe5a5;
  font-size:12px;
  font-weight:800;
  letter-spacing:.2px;
  box-shadow:0 5px 18px rgba(0,0,0,.28);
  pointer-events:none;
}

/* 🐾 PETIT */
.animal-portrait.growth-petit .pet-stage-ribbon68{
  border-color:rgba(170,210,255,.55);
  color:#dceeff;
}

.animal-portrait.growth-petit .living-motion{
  transform:scale(.78);
  transform-origin:center bottom;
}

/* 🌿 JEUNE */
.animal-portrait.growth-jeune .pet-stage-ribbon68{
  border-color:rgba(142,224,173,.65);
  color:#caffdb;
  box-shadow:0 0 18px rgba(90,210,140,.18);
}

.animal-portrait.growth-jeune .living-motion{
  transform:scale(.90);
  transform-origin:center bottom;
  filter:drop-shadow(0 0 7px rgba(142,224,173,.35));
}

/* 🐶 ADULTE */
.animal-portrait.growth-adulte .pet-stage-ribbon68{
  border-color:rgba(255,210,122,.75);
  color:#ffe5a5;
  box-shadow:0 0 20px rgba(255,210,122,.25);
}

.animal-portrait.growth-adulte .living-motion{
  transform:scale(1);
  transform-origin:center bottom;
  filter:drop-shadow(0 0 10px rgba(255,210,122,.32));
}

/* ✨ SAGE */
.animal-portrait.growth-sage .pet-stage-ribbon68{
  border-color:rgba(190,155,255,.85);
  color:#eadfff;
  background:rgba(42,24,78,.9);
  box-shadow:0 0 24px rgba(157,110,255,.38);
  animation:sageRibbon68 3s ease-in-out infinite;
}

.animal-portrait.growth-sage .living-motion{
  transform:scale(1.12);
  transform-origin:center bottom;
  filter:
    saturate(1.15)
    brightness(1.05)
    drop-shadow(0 0 15px rgba(170,125,255,.48));
}

.animal-portrait.growth-sage::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:9%;
  width:82%;
  height:45%;
  transform:translateX(-50%);
  border-radius:50%;
  background:radial-gradient(
    ellipse,
    rgba(170,125,255,.18),
    rgba(170,125,255,.06) 42%,
    transparent 72%
  );
  pointer-events:none;
  animation:sageAura68 3.5s ease-in-out infinite;
}

/* Petits scintillements du Sage */
.animal-portrait.growth-sage .companion-hearts span:nth-child(5){
  animation:sageSpark68 1.8s ease-in-out infinite;
}

@keyframes sageAura68{
  0%,100%{
    opacity:.45;
    transform:translateX(-50%) scale(.94);
  }
  50%{
    opacity:1;
    transform:translateX(-50%) scale(1.08);
  }
}

@keyframes sageRibbon68{
  0%,100%{
    box-shadow:0 0 16px rgba(157,110,255,.25);
  }
  50%{
    box-shadow:0 0 28px rgba(157,110,255,.55);
  }
}

@keyframes sageSpark68{
  0%,100%{
    transform:scale(1);
    opacity:.7;
  }
  50%{
    transform:scale(1.35);
    opacity:1;
  }
}

/* Mobile */
@media(max-width:899px){
  .pet-stage-ribbon68{
    font-size:10px;
    padding:5px 9px;
    bottom:3%;
  }

  .animal-portrait.growth-petit .living-motion{
    transform:scale(.72);
  }

  .animal-portrait.growth-jeune .living-motion{
    transform:scale(.86);
  }

  .animal-portrait.growth-sage .living-motion{
    transform:scale(1.05);
  }
}
