/* La corazonada sólo modifica el color de esta sección. */
.team-section { position: relative; isolation: isolate; display: none; padding: 60px 22px 58px; text-align: center; scroll-margin-top: 24px; overflow: hidden; color: var(--ink-strong); --choice-color: var(--pink); --choice-ink: var(--accent-pink); }
[data-stage="cover"] .team-section, html[data-restored="true"] .team-section { display: block; }
.team-section:focus, #team-result-title:focus { outline: none; }
.team-section [hidden] { display: none !important; }
.team-section::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: radial-gradient(ellipse at 50% 50%,color-mix(in srgb,var(--choice-color) 45%,transparent),transparent 75%); opacity: 0; transition: opacity 450ms; }
.team-section[data-team="girl"] { --choice-color: var(--pink); --choice-ink: var(--accent-pink); }
.team-section[data-team="boy"] { --choice-color: var(--blue); --choice-ink: var(--accent-blue); }
.team-section[data-phase="celebrating"]::before, .team-section[data-phase="chosen"]::before { opacity: 1; }
.team-heading { max-width: 580px; margin: 0 auto 20px; }
.team-keepsake { width: 39px; margin: 0 auto 20px; }
.team-keepsake svg { width: 100%; fill: none; stroke: var(--accent-pink); stroke-width: 1.2; }
.team-keepsake path:last-child { stroke: var(--accent-blue); }
.team-heading h2 { margin: 0; font-family: var(--serif); font-size: clamp(31px,4vw,44px); font-weight: 500; line-height: 1.15; text-wrap: balance; }
.team-heading p { margin: 13px auto 0; font-size: 14px; line-height: 1.7; color: var(--ink-soft); }
.team-definitions { position: absolute; pointer-events: none; }
#team-pink-balloon stop:nth-child(1) { stop-color: color-mix(in srgb,var(--pink) 25%,#fff); }
#team-pink-balloon stop:nth-child(2) { stop-color: color-mix(in srgb,var(--pink) 85%,#fff); }
#team-pink-balloon stop:nth-child(3) { stop-color: color-mix(in srgb,var(--pink) 70%,#b96488); }
#team-pink-balloon stop:nth-child(4) { stop-color: color-mix(in srgb,var(--pink) 45%,#9c456d); }
#team-blue-balloon stop:nth-child(1) { stop-color: color-mix(in srgb,var(--blue) 20%,#fff); }
#team-blue-balloon stop:nth-child(2) { stop-color: color-mix(in srgb,var(--blue) 85%,#fff); }
#team-blue-balloon stop:nth-child(3) { stop-color: color-mix(in srgb,var(--blue) 65%,#6099b9); }
#team-blue-balloon stop:nth-child(4) { stop-color: color-mix(in srgb,var(--blue) 40%,#3a759b); }
[data-team="girl"] { --balloon-fill: url(#team-pink-balloon); --balloon-ink: var(--accent-pink); }
[data-team="boy"] { --balloon-fill: url(#team-blue-balloon); --balloon-ink: var(--accent-blue); }
.team-balloon-body, .team-balloon-knot { fill: var(--balloon-fill); }
.team-stage { position: relative; width: min(100%,510px); height: 408px; margin: 0 auto; transition: height 380ms ease; }
.team-balloons { position: relative; z-index: 3; display: flex; justify-content: center; gap: 48px; padding-top: 5px; }
.team-balloon { position: relative; z-index: 3; display: flex; flex-direction: column; align-items: center; width: 150px; flex: 0 1 150px; min-width: 0; border: 0; padding: 4px 0 0; border-radius: 30px; background: transparent; color: var(--balloon-ink); cursor: grab; user-select: none; -webkit-user-select: none; touch-action: none; transform: translate3d(var(--drag-x,0px),var(--drag-y,0px),0); transition: transform 350ms cubic-bezier(.2,.7,.3,1); }
.team-balloon-float { display: block; animation: team-balloon-float 4.4s ease-in-out infinite; animation-play-state: paused; transform-origin: 50% 30%; }
.is-active .team-balloon-float { animation-play-state: running; }
.team-balloon[data-team="boy"] .team-balloon-float { animation-delay: -2.2s; }
.team-balloon-art { display: block; width: 132px; height: auto; aspect-ratio: 180 / 260; pointer-events: none; filter: drop-shadow(0 9px 7px #72526920); }
.team-balloon-label { position: relative; order: -1; margin-bottom: 7px; display: inline-flex; align-items: center; justify-content: center; gap: 5px; width: 100%; min-height: 40px; padding: 7px 8px; border: 1px solid transparent; border-radius: 22px; color: var(--balloon-ink); font-family: var(--serif); font-size: 17px; font-weight: 400; line-height: 1.2; transition: background 180ms,border-color 180ms; }
.team-selection-mark { display: none; width: 16px; height: 16px; flex-shrink: 0; }
.team-selection-mark svg { width: 100%; height: 100%; stroke: currentColor; fill: none; stroke-width: 1.5; }
.team-balloon[aria-pressed="true"] .team-balloon-label { background: #fffaf3c9; border-color: currentColor; }
.team-balloon[aria-pressed="true"] .team-selection-mark { display: block; }
.team-balloon.is-grabbing .team-balloon-float, .team-balloon:disabled .team-balloon-float { animation-play-state: paused; }
.team-balloon.is-grabbing { transition: none; }
.team-balloon.is-dragging { z-index: 20; cursor: grabbing; transition: none; }
.team-balloon:focus-visible { outline-offset: 3px; }
.team-box { position: absolute; z-index: 2; bottom: 0; left: 50%; width: 330px; max-width: 100%; transform: translateX(-50%); }
.team-box-art { display: block; width: 100%; height: auto; filter: drop-shadow(0 12px 12px #5d46571c); }
.team-box-pink-ribbon { fill: var(--pink); }
.team-box-blue-ribbon { fill: var(--blue); }
.team-box-glow { position: absolute; inset: -20px 8% 36%; background: radial-gradient(ellipse,#fffaf0 5%,color-mix(in srgb,var(--choice-color) 80%,transparent) 35%,transparent 72%); filter: blur(15px); opacity: 0; transform: scale(.8); transition: opacity 200ms,transform 200ms; }
.team-box.is-over .team-box-glow { opacity: .9; transform: scale(1); }
.team-drop-zone { position: absolute; z-index: 2; top: 15%; left: 20%; right: 19%; height: 36%; display: flex; align-items: center; justify-content: center; padding: 8px 15px; border: 1px dashed #927b687d; border-radius: 50% 50% 35% 35%; background: #fff8ebd4; color: #7e665f; box-shadow: inset 0 4px 8px #ad947219; transition: background 200ms,box-shadow 200ms,border-color 200ms; pointer-events: none; }
.team-drop-zone span { max-width: 140px; font-size: 11px; font-weight: 700; line-height: 1.6; }
.team-box.is-over .team-drop-zone { border-color: var(--choice-ink); color: var(--choice-ink); background: #fffdf6; box-shadow: 0 0 22px color-mix(in srgb,var(--choice-color) 80%,transparent); }
.team-choice-actions { display: flex; justify-content: center; flex-direction: column; align-items: center; gap: 8px; min-height: 78px; margin: 9px auto 0; }
.team-tap-hint { max-width: 300px; margin: 0; min-height: 18px; font-size: 11px; line-height: 1.6; color: var(--ink-soft); }
.team-choice-actions .discover-button { cursor: pointer; font: inherit; font-size: 12px; font-weight: 700; min-height: 46px; }
.team-flight { position: absolute; z-index: 25; top: 0; left: 0; width: var(--flight-width,132px); pointer-events: none; transform: translate3d(var(--flight-x,0px),var(--flight-y,0px),0); }
.team-flight .team-balloon-art { width: 100%; }
.team-flight.is-flying { animation: team-choice-flight 1500ms cubic-bezier(.2,.6,.3,1) both; }
.team-result { max-width: 430px; margin: 18px auto 0; animation: team-card-arrive 400ms ease both; }
.team-result h3 { margin: 0; font-family: var(--serif); font-size: 30px; font-weight: 500; line-height: 1.15; color: var(--choice-ink); text-wrap: balance; }
.team-result-message { max-width: 315px; margin: 11px auto 25px; font-size: 13px; line-height: 1.7; color: var(--ink-soft); }
.team-card { position: relative; display: grid; grid-template-columns: 70px 1fr; align-items: center; gap: 12px 18px; padding: 25px 25px 17px; background: linear-gradient(135deg,#fffaf6f2,#fffdf7e0); border: 1px solid #fffefa; border-radius: 22px; box-shadow: 0 18px 36px -24px #72526977; text-align: left; }
.team-card::before { content: ""; position: absolute; inset: 8px; border: 1px dashed color-mix(in srgb,var(--choice-color) 90%,#968294); border-radius: 16px; pointer-events: none; }
.team-card-balloon { position: relative; display: block; width: 65px; height: 94px; }
.team-card-text { position: relative; }
.team-card-text span { color: var(--ink-soft); font-size: 12px; font-style: italic; }
.team-card-text p { margin: 7px 0 0; color: var(--choice-ink); font-family: var(--serif); font-size: 28px; line-height: 1.2; }
.team-card-actions { position: relative; grid-column: 1 / -1; display: flex; flex-direction: column; align-items: center; gap: 5px; }
.team-change { min-height: 44px; border: 0; background: none; padding: 10px 4px; color: var(--ink-soft); font: inherit; font-size: 12px; font-weight: 700; text-decoration: underline; text-underline-offset: 5px; cursor: pointer; }
.team-card-actions .discover-button { min-height: 46px; max-width: 100%; gap: 10px; padding: 12px 14px; text-align: center; font-size: 11px; line-height: 1.5; }
.team-card-actions svg { flex-shrink: 0; }
.team-local-note { max-width: 320px; margin: 17px auto 0; color: var(--ink-soft); font-size: 11px; line-height: 1.7; }
.team-undecided { position: relative; z-index: 5; display: inline-flex; align-items: center; gap: 7px; min-height: 44px; margin: 13px auto 0; padding: 10px 4px; font-size: 12px; font-weight: 600; color: var(--ink-soft); text-decoration: none; }
.team-undecided:hover { text-decoration: underline; text-underline-offset: 5px; }
.team-undecided svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 1.4; }
.team-confetti { position: absolute; z-index: 15; inset: 0; overflow: hidden; pointer-events: none; }
.team-confetti i { position: absolute; top: var(--confetti-top,180px); left: var(--confetti-left,50%); width: var(--confetti-width,6px); height: 10px; border-radius: 2px; background: var(--choice-color); opacity: 0; animation: team-confetti-fall var(--confetti-time,1200ms) var(--confetti-delay,0ms) ease-out both; }
.team-confetti i:nth-child(3n) { background: color-mix(in srgb,var(--choice-color) 65%,#fffaf6); height: 6px; border-radius: 50%; }
.team-confetti i:nth-child(4n) { background: color-mix(in srgb,var(--choice-color) 80%,var(--choice-ink)); }
[data-phase="celebrating"] .team-balloons, [data-phase="chosen"] .team-balloons { visibility: hidden; }
[data-phase="chosen"] .team-stage { height: 210px; }
[data-phase="chosen"] .team-choice-actions, [data-phase="celebrating"] .team-choice-actions { display: none; }
.team-section.is-restored .team-stage { transition: none; }
.team-section.is-restored .team-result { animation: none; }
@keyframes team-balloon-float { 0%,100% { transform: translateY(0) rotate(-1deg); } 50% { transform: translateY(-7px) rotate(1.5deg); } }
@keyframes team-choice-flight {
  0% { transform: translate3d(var(--flight-x),var(--flight-y),0) scale(1); opacity: 1; }
  30%,45% { transform: translate3d(var(--box-x),var(--box-y),0) scale(.74); opacity: 1; }
  85% { transform: translate3d(var(--box-x),calc(var(--box-y) - 150px),0) scale(.88); opacity: 1; }
  100% { transform: translate3d(var(--box-x),calc(var(--box-y) - 190px),0) scale(.9); opacity: 0; }
}
@keyframes team-confetti-fall { 0% { opacity: 0; transform: translate3d(0,-15px,0) rotate(0); } 15% { opacity: 1; } 85% { opacity: .9; } 100% { opacity: 0; transform: translate3d(var(--confetti-drift,40px),var(--confetti-fall,260px),0) rotate(var(--confetti-turn,180deg)); } }
@keyframes team-card-arrive { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@media (max-width:480px) {
  .team-section { padding: 50px 22px 42px; }
  .team-heading { margin-bottom: 18px; }
  .team-heading h2 { font-size: 31px; }
  .team-heading p { font-size: 13px; }
  .team-stage { height: 363px; }
  .team-balloons { gap: 25px; }
  .team-balloon { width: 138px; flex-basis: 138px; }
  .team-balloon-art { width: 116px; }
  .team-balloon-label { font-size: 16px; padding: 7px 5px; }
  .team-box { width: 300px; }
  .team-result h3 { font-size: 28px; }
  .team-card { padding: 24px 21px 16px; grid-template-columns: 60px 1fr; gap: 12px; }
  .team-card-balloon { width: 58px; height: 84px; }
  .team-card-text p { font-size: 26px; }
  [data-phase="chosen"] .team-stage { height: 190px; }
}
@media (max-width:359px) {
  .team-section { padding-left: 18px; padding-right: 18px; }
  .team-heading h2 { font-size: 28px; }
  .team-balloons { gap: 13px; }
  .team-balloon-art { width: 106px; }
  .team-balloon-label { font-size: 15px; }
  .team-stage { height: 339px; }
  .team-box { width: 278px; }
  .team-card { padding-left: 18px; padding-right: 18px; }
  .team-card-text p { font-size: 24px; }
}
@media (prefers-reduced-motion:reduce) {
  .team-balloon-float, .team-flight.is-flying, .team-confetti i, .team-result { animation: none; }
  .team-balloon, .team-stage, .team-section::before, .team-box-glow, .team-drop-zone, .team-balloon-label { transition: none; }
}
@media (max-width:480px) and (max-height:700px) {
  .team-section { padding-top: 26px; }
  .team-keepsake { width: 30px; margin-bottom: 12px; }
  .team-heading { margin-bottom: 12px; }
  .team-heading h2 { font-size: 26px; }
  .team-heading p { font-size: 12px; margin-top: 9px; }
}

/* Pulido visual y de movimiento: insignia como en las otras secciones, etiquetas en píldora,
   globo elegido destacado, caja que invita a soltar y una celebración más alegre. */
.team-keepsake { display: grid; place-items: center; width: 64px; height: 64px; margin-bottom: 22px; border-radius: 50%; background: #ffffffd0; box-shadow: 0 10px 24px -14px #6a4f6a73, inset 0 0 0 1px #fff; }
.team-keepsake svg { width: 34px; stroke-width: 1.6; }
.team-heading p { font-size: 15px; font-weight: 600; }
.team-balloon-label { width: auto; min-width: 128px; padding: 8px 16px; border: 1.5px solid #ffffffcc; background: #ffffffb8; font-weight: 500; box-shadow: 0 8px 18px -12px #5a456066; transition: background 220ms, color 220ms, border-color 220ms, transform 220ms, box-shadow 220ms; }
.team-balloon[aria-pressed="true"] .team-balloon-label { background: var(--balloon-ink); border-color: var(--balloon-ink); color: #fff; box-shadow: 0 10px 22px -10px var(--balloon-ink); }
.team-balloon-art { transition: opacity 260ms, transform 320ms cubic-bezier(.3,1.5,.5,1), filter 260ms; }
.team-section[data-phase="choosing"][data-team] .team-balloon[aria-pressed="false"]:not(.is-dragging) .team-balloon-art { opacity: .55; transform: scale(.92); filter: saturate(.7) drop-shadow(0 9px 7px #72526920); }
.team-balloon[aria-pressed="true"] .team-balloon-art { transform: scale(1.06); filter: drop-shadow(0 0 18px color-mix(in srgb, var(--balloon-ink) 45%, transparent)) drop-shadow(0 9px 7px #72526920); }
.team-balloon.is-dragging .team-balloon-art { transform: scale(1.08) rotate(-4deg); }
.team-tap-hint { font-size: 13px; font-weight: 600; }
.team-choice-actions .discover-button { font-size: 13px; }
.team-undecided { font-size: 13px; }
.team-drop-zone span { font-size: 12px; }
[data-phase="chosen"] .team-box-glow { opacity: .7; transform: scale(1); }
.team-result h3 { font-size: 34px; }
.team-result-message { font-size: 14px; font-weight: 600; }
.team-card { border-radius: 26px; box-shadow: 0 22px 44px -24px #72526999; }
.team-card-balloon { filter: drop-shadow(0 8px 10px color-mix(in srgb, var(--choice-ink) 30%, transparent)); }
.team-card-actions .discover-button { font-size: 12px; }
.team-change { font-size: 13px; }
.team-local-note { font-size: 12px; font-weight: 600; }
.team-confetti i:nth-child(5n) { background: #fff; height: 7px; width: 7px; border-radius: 50%; box-shadow: 0 0 6px #fff; }
.team-confetti i:nth-child(7n) { width: 12px; height: 11px; border-radius: 0; background: var(--choice-ink); clip-path: path("M6 11S0 7 0 3.5A3 3 0 0 1 6 2a3 3 0 0 1 6 1.5C12 7 6 11 6 11Z"); }

@media (prefers-reduced-motion: no-preference) {
  /* Pasar el cursor levanta el globo; elegir lo hace rebotar. */
  .team-balloon:not(:disabled):hover .team-balloon-label { transform: translateY(-2px); }
  .team-balloon:not(:disabled):hover .team-balloon-art { transform: translateY(-6px) scale(1.03); }
  .team-balloon[aria-pressed="true"]:not(:disabled):hover .team-balloon-art { transform: translateY(-6px) scale(1.08); }
  .team-balloon[aria-pressed="true"] .team-balloon-label { animation: team-label-pop 420ms cubic-bezier(.3,1.6,.5,1); }
  .team-balloon[aria-pressed="true"] .team-balloon-float { animation-name: team-balloon-float-chosen; animation-duration: 3.2s; }
  /* Con un globo elegido, la zona de la caja late suavemente para invitar a soltarlo. */
  .team-section[data-phase="choosing"][data-team] .team-drop-zone { animation: team-drop-invite 1.8s ease-in-out infinite; border-color: var(--choice-ink); color: var(--choice-ink); }
  .team-section[data-phase="choosing"][data-team] .team-box-glow { opacity: .45; transform: scale(.95); }
  .team-box.is-over .team-box-art { animation: team-box-wiggle 600ms ease-in-out infinite; }
  /* Al confirmar, la caja da un salto y la tarjeta llega con rebote. */
  [data-phase="celebrating"] .team-box-art { animation: team-box-catch 900ms 330ms cubic-bezier(.3,1.4,.5,1) both; }
  [data-phase="celebrating"] .team-box-glow { opacity: 1; transform: scale(1.15); transition-delay: 380ms; }
  .team-result { animation: team-card-spring 650ms cubic-bezier(.3,1.4,.5,1) both; }
  .team-result h3 { animation: team-title-pop 600ms 120ms cubic-bezier(.3,1.6,.5,1) both; }
  .team-card-balloon { animation: team-card-balloon 3.6s ease-in-out infinite; transform-origin: 50% 70%; }
  .team-confetti i { animation-name: team-confetti-burst; }
}
@keyframes team-label-pop { 0% { transform: scale(.9); } 60% { transform: scale(1.08); } 100% { transform: scale(1); } }
@keyframes team-balloon-float-chosen { 0%,100% { transform: translateY(0) rotate(-2deg); } 50% { transform: translateY(-12px) rotate(2.5deg); } }
@keyframes team-drop-invite { 0%,100% { box-shadow: inset 0 4px 8px #ad947219, 0 0 0 0 color-mix(in srgb, var(--choice-color) 60%, transparent); } 50% { box-shadow: inset 0 4px 8px #ad947219, 0 0 0 10px transparent; } }
@keyframes team-box-wiggle { 0%,100% { transform: rotate(0); } 25% { transform: rotate(-1.5deg); } 75% { transform: rotate(1.5deg); } }
@keyframes team-box-catch { 0% { transform: none; } 25% { transform: translateY(6px) scale(1.04,.94); } 55% { transform: translateY(-10px) scale(.98,1.03); } 100% { transform: none; } }
@keyframes team-card-spring { 0% { opacity: 0; transform: translateY(26px) scale(.94); } 100% { opacity: 1; transform: none; } }
@keyframes team-title-pop { 0% { opacity: 0; transform: scale(.7); } 100% { opacity: 1; transform: none; } }
@keyframes team-card-balloon { 0%,100% { transform: translateY(0) rotate(-3deg); } 50% { transform: translateY(-6px) rotate(3deg); } }
@keyframes team-confetti-burst {
  0% { opacity: 0; transform: translate3d(0,10px,0) scale(.4) rotate(0); }
  12% { opacity: 1; }
  35% { opacity: 1; transform: translate3d(calc(var(--confetti-drift,40px) * .6), calc(var(--confetti-fall,260px) * -.45), 0) scale(1) rotate(calc(var(--confetti-turn,180deg) * .4)); }
  85% { opacity: .9; }
  100% { opacity: 0; transform: translate3d(var(--confetti-drift,40px), var(--confetti-fall,260px), 0) scale(.9) rotate(var(--confetti-turn,180deg)); }
}
@media (max-width: 480px) {
  .team-keepsake { width: 56px; height: 56px; }
  .team-keepsake svg { width: 30px; }
  .team-balloon-label { min-width: 0; padding: 7px 12px; }
  .team-result h3 { font-size: 30px; }
}
@media (max-width: 480px) and (max-height: 700px) {
  .team-keepsake { width: 44px; height: 44px; margin-bottom: 12px; }
}

/* Nota que señala dónde va el globo: aparece sólo mientras se elige. */
.team-box-note { position: absolute; z-index: 4; left: 50%; top: -6px; display: flex; flex-direction: column; align-items: center; gap: 2px; margin: 0; padding: 7px 12px 6px; border-radius: 14px; background: #fffdf8f2; color: var(--ink-strong); box-shadow: 0 8px 18px -10px #5a456080, inset 0 0 0 1px #ffffff; font-size: 12px; font-weight: 800; line-height: 1.15; text-align: center; pointer-events: none; transform: translate(-50%,-100%) rotate(-3deg); transition: opacity 250ms, color 250ms; }
.team-box-note::before { content: ""; position: absolute; top: -5px; left: 50%; width: 22px; height: 9px; margin-left: -11px; border-radius: 2px; background: color-mix(in srgb, var(--pink) 55%, var(--blue)); opacity: .75; transform: rotate(4deg); }
.team-box-note svg { position: absolute; top: 100%; left: 50%; width: 18px; height: 26px; margin: 2px 0 0 -9px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.team-section[data-team] .team-box-note { color: var(--choice-ink); }
.team-box.is-over .team-box-note, [data-phase="celebrating"] .team-box-note, [data-phase="chosen"] .team-box-note { opacity: 0; }
/* Lluvia continua del color elegido, detrás del contenido. */
.team-rain { position: absolute; z-index: -1; inset: 0; overflow: hidden; pointer-events: none; }
.team-rain i { position: absolute; top: -20px; left: var(--rain-left,50%); width: var(--rain-size,7px); height: calc(var(--rain-size,7px) * 1.5); border-radius: 2px; background: color-mix(in srgb,var(--choice-color) 70%,var(--choice-ink)); opacity: 0; animation: team-rain-fall var(--rain-time,6000ms) linear both; }
.team-rain i:nth-child(3n) { height: var(--rain-size,7px); border-radius: 50%; background: color-mix(in srgb,var(--choice-color) 70%,#fff); }
.team-rain i:nth-child(4n) { background: color-mix(in srgb,var(--choice-color) 70%,var(--choice-ink)); }
.team-rain i:nth-child(7n) { width: 11px; height: 10px; border-radius: 0; background: var(--choice-ink); clip-path: path("M5.5 10S0 6.5 0 3.2A2.8 2.8 0 0 1 5.5 1.8 2.8 2.8 0 0 1 11 3.2C11 6.5 5.5 10 5.5 10Z"); }
@keyframes team-rain-fall { 0% { opacity: 0; transform: translate3d(0,0,0) rotate(0); } 8% { opacity: .9; } 90% { opacity: .85; } 100% { opacity: 0; transform: translate3d(var(--rain-drift,40px),var(--rain-fall,900px),0) rotate(var(--rain-turn,360deg)); } }
@media (prefers-reduced-motion: no-preference) {
  .team-box-note svg { animation: team-note-arrow 1.2s ease-in-out infinite; }
  .team-box-note { animation: team-note-sway 3s ease-in-out infinite; }
}
@keyframes team-note-arrow { 0%,100% { transform: translateY(0); } 50% { transform: translateY(5px); } }
@keyframes team-note-sway { 0%,100% { transform: translate(-50%,-100%) rotate(-3deg); } 50% { transform: translate(-50%,-104%) rotate(2deg); } }
@media (prefers-reduced-motion: reduce) { .team-rain { display: none; } }
@media (max-width: 480px) { .team-box-note { font-size: 11px; padding: 6px 10px 5px; } }

/* La nota "Tu globo va aquí" ya indica el destino: la abertura no repite el texto mientras se elige. */
.team-section[data-phase="choosing"] #team-drop-label { display: none; }
/* Caja más limpia: la zona de destino sigue funcionando pero es invisible; el brillo de la caja da la respuesta visual. */
.team-drop-zone, .team-box.is-over .team-drop-zone, .team-section[data-phase="choosing"][data-team] .team-drop-zone { border-color: transparent; background: none; box-shadow: none; animation: none; }
#team-drop-label { display: none; }
