.sp-pet[data-airborne=true]::after {
  transform: translateY(var(--sp-jump-offset));
  opacity: .18;
  filter: blur(10px);
}

.sp-pet.sp-land .sp-sprite {
  animation: sp-land-impact .22s cubic-bezier(.2, .8, .25, 1) !important;
  transform-origin: 50% 100%;
}

@keyframes sp-land-impact {
  0% { transform: translateY(7px) scale(1.09, .8); }
  48% { transform: translateY(-2px) scale(.96, 1.07); }
  100% { transform: none; }
}

/* Le caret est un indicateur d'état, pas un mouvement décoratif. */
.sp-bubble[data-typed="true"] .sp-bubble-text::after {
  opacity: .72;
  animation: sp-message-caret .72s steps(1, end) infinite !important;
}

@keyframes sp-message-caret {
  0%, 44% { opacity: .72; }
  45%, 100% { opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .sp-bubble[data-typed="true"] .sp-bubble-text::after {
    animation-duration: .9s !important;
    animation-iteration-count: infinite !important;
  }
}

/* Roue contextuelle : actions au centre, locomotion tactile autour. */
.sp-wheel-direction {
  z-index: 5 !important;
  width: 42px !important;
  height: 42px !important;
  min-height: 42px !important;
  padding: 0 !important;
  border-radius: 14px !important;
  background: rgba(18, 16, 24, .9) !important;
  transform: none !important;
  transform-origin: center !important;
  touch-action: none;
}
.sp-wheel-direction:hover,
.sp-wheel-direction:active { background: var(--sp-accent) !important; transform: scale(1.08) !important; }
.sp-wheel-direction-up { left: 77px !important; top: -48px !important; }
.sp-wheel-direction-right { left: 202px !important; top: 77px !important; }
.sp-wheel-direction-down { left: 77px !important; top: 202px !important; }
.sp-wheel-direction-left { left: -48px !important; top: 77px !important; }
.sp-action-wheel .sp-wheel-sleep {
  position: static !important;
  width: 27px !important;
  height: 27px !important;
  min-height: 27px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.08) !important;
  transform: none !important;
  transform-origin: center !important;
}
.sp-action-wheel .sp-wheel-sleep:hover { color: #ff9a8d; background: rgba(242,90,70,.16) !important; }
.sp-pet-chip[data-dormant="true"] { opacity: .42; filter: grayscale(.7); box-shadow: inset 0 0 0 1px rgba(255,255,255,.08); }
.sp-pet-chip[data-dormant="true"]::before { content: "z"; position: absolute; right: 2px; top: -2px; z-index: 3; color: #b9b1c3; font-size: .7rem; font-weight: 800; }
.sp-pet-chip[data-dormant="true"]:hover { opacity: .85; filter: grayscale(.2); }

.sp-pet.sp-double-jump .sp-sprite { animation: sp-double-jump-flash .24s ease-out !important; }
@keyframes sp-double-jump-flash {
  0% { filter: brightness(1.8) drop-shadow(0 0 14px rgba(246,198,78,.9)); transform: scale(.92,1.08); }
  100% { filter: none; transform: none; }
}

.sp-action-wheel .sp-wheel-jump {
  z-index: 6 !important;
  left: 179px !important;
  top: 179px !important;
  width: 48px !important;
  height: 48px !important;
  min-height: 48px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  color: white;
  background: rgba(242,90,70,.94) !important;
  border-color: rgba(255,255,255,.22) !important;
  box-shadow: 0 10px 26px rgba(242,90,70,.28);
  transform: none !important;
  transform-origin: center !important;
}
.sp-action-wheel .sp-wheel-jump:hover { transform: translateY(-3px) scale(1.08) !important; }

.sp-action-feedback {
  position: fixed;
  z-index: 120;
  padding: .42rem .68rem;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 999px;
  color: #fff;
  background: rgba(20,18,26,.84);
  box-shadow: 0 10px 28px rgba(0,0,0,.28);
  backdrop-filter: blur(14px) saturate(1.25);
  font-size: .7rem;
  font-weight: 720;
  letter-spacing: .035em;
  pointer-events: none;
  transform: translate(-50%,-100%);
  animation: sp-action-feedback-in .18s ease-out;
}
@keyframes sp-action-feedback-in { from { opacity: 0; transform: translate(-50%,-75%) scale(.9); } }

.sp-embed-dialog{width:min(900px,calc(100% - 28px))}.sp-embed-dialog form{display:grid;gap:16px}.sp-embed-builder{display:grid;grid-template-columns:minmax(220px,280px) minmax(320px,1fr);gap:16px;margin-top:16px}.sp-embed-output{display:grid;gap:10px}.sp-embed-output iframe{width:100%;min-height:260px;max-height:440px;border:1px solid var(--sp-line);border-radius:18px;background:linear-gradient(145deg,#24202d,#131119)}.sp-embed-output textarea{width:100%;min-height:116px;padding:12px;resize:vertical;border-radius:14px;font:12px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}.sp-embed-dimensions{display:grid;grid-template-columns:1fr 1fr;gap:8px}@media(max-width:720px){.sp-embed-builder{grid-template-columns:1fr}.sp-embed-output iframe{min-height:240px}}
