/* Generado por scripts/generar-ambientes.js. No lo edites a mano: cambia el
   generador y vuelve a correrlo (node scripts/generar-ambientes.js).

   El ambiente: la escena animada detrás de todo, una por tema, por capas:
   cielo (estrellas), deco3 (lo lejano), deco2 (el paisaje), deco (lo que
   protagoniza) y doce partículas. Dibujos fijos y solo transform y opacity
   animados. Con «reducir movimiento» se queda quieta y en Abismo el fondo
   sigue negro puro (ahorra batería en pantallas OLED). */

.ambiente {
  position: fixed;
  inset: 0;
  z-index: -1;
  overflow: hidden;
  pointer-events: none;
  background:
    radial-gradient(60% 45% at 88% 0%, rgb(var(--brillo-rgb) / 0.2), transparent 70%),
    radial-gradient(50% 40% at 0% 72%, rgb(var(--luz-rgb) / 0.09), transparent 70%);
  transition: opacity 0.4s;
}
.ambiente > * {
  position: absolute;
  display: none;
}
/* Mientras juegas una misión, el ambiente baja la voz. */
body.en-mision .ambiente,
body.en-leccion .ambiente {
  opacity: 0.35;
}

/* Estrellas: tres capas de puntos con mosaicos distintos (no se nota la repetición). */
.ambiente__cielo {
  display: block;
  inset: 0;
  background-image:
    radial-gradient(circle, rgb(255 255 255 / 0.85) 0 1px, transparent 1.6px),
    radial-gradient(circle, rgb(200 215 255 / 0.6) 0 1px, transparent 1.5px),
    radial-gradient(circle, rgb(255 255 255 / 0.5) 0 0.7px, transparent 1.2px);
  background-size: 173px 173px, 251px 251px, 97px 97px;
  background-position: 0 0, 60px 110px, 30px 40px;
  opacity: 0.55;
  animation: amb-titila 7s ease-in-out infinite alternate;
}

/* Partículas: doce, con posición y ritmo propios. Cada tema decide su forma. */
.ambiente__particulas {
  inset: 0;
}
.ambiente__particulas i {
  position: absolute;
  left: var(--x);
  top: var(--y);
  display: block;
  animation-delay: var(--d);
  animation-duration: var(--t);
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}
.ambiente__particulas i:nth-child(1) { --x: 6%; --y: 12%; --d: -1s; --t: 11s; }
.ambiente__particulas i:nth-child(2) { --x: 14%; --y: 64%; --d: -6s; --t: 14s; }
.ambiente__particulas i:nth-child(3) { --x: 23%; --y: 30%; --d: -3s; --t: 12s; }
.ambiente__particulas i:nth-child(4) { --x: 31%; --y: 82%; --d: -9s; --t: 16s; }
.ambiente__particulas i:nth-child(5) { --x: 40%; --y: 8%; --d: -2s; --t: 13s; }
.ambiente__particulas i:nth-child(6) { --x: 48%; --y: 46%; --d: -7s; --t: 15s; }
.ambiente__particulas i:nth-child(7) { --x: 57%; --y: 72%; --d: -4s; --t: 12s; }
.ambiente__particulas i:nth-child(8) { --x: 65%; --y: 20%; --d: -10s; --t: 17s; }
.ambiente__particulas i:nth-child(9) { --x: 73%; --y: 58%; --d: -5s; --t: 14s; }
.ambiente__particulas i:nth-child(10) { --x: 81%; --y: 36%; --d: -8s; --t: 12s; }
.ambiente__particulas i:nth-child(11) { --x: 89%; --y: 88%; --d: -11s; --t: 16s; }
.ambiente__particulas i:nth-child(12) { --x: 95%; --y: 14%; --d: -0.5s; --t: 13s; }

/* Piezas que se reusan. */
:root[data-tema="nebulosa"] .ambiente__particulas i,
:root[data-tema="boreal"] .ambiente__particulas i,
:root[data-tema="lavanda"] .ambiente__particulas i,
:root[data-tema="obsidiana"] .ambiente__particulas i,
:root[data-tema="glaciar"] .ambiente__particulas i {
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 8px #fff;
  animation-name: amb-destello;
  animation-duration: calc(var(--t) / 4);
  animation-timing-function: ease-in-out;
}
:root[data-tema="nebulosa"] .ambiente__particulas,
:root[data-tema="boreal"] .ambiente__particulas,
:root[data-tema="eclipse"] .ambiente__particulas,
:root[data-tema="sintonia"] .ambiente__particulas,
:root[data-tema="selva"] .ambiente__particulas,
:root[data-tema="abismo"] .ambiente__particulas,
:root[data-tema="lavanda"] .ambiente__particulas,
:root[data-tema="sakura"] .ambiente__particulas,
:root[data-tema="obsidiana"] .ambiente__particulas,
:root[data-tema="vapor"] .ambiente__particulas,
:root[data-tema="lofi"] .ambiente__particulas,
:root[data-tema="grafito"] .ambiente__particulas,
:root[data-tema="glaciar"] .ambiente__particulas,
:root[data-tema="matcha"] .ambiente__particulas,
:root[data-tema="estelar"] .ambiente__particulas,
:root[data-tema="arena"] .ambiente__particulas,
:root[data-tema="menta"] .ambiente__particulas,
:root[data-tema="tinta"] .ambiente__particulas {
  display: block;
}

/* ---------- Nebulosa: nubes índigo, un planeta lejano y estrellas fugaces ---------- */
:root[data-tema="nebulosa"] .ambiente__deco {
  display: block;
  inset: -20%;
  background:
    radial-gradient(30% 25% at 70% 20%, rgb(107 92 255 / 0.24), transparent 70%),
    radial-gradient(25% 22% at 25% 65%, rgb(60 224 255 / 0.11), transparent 70%),
    radial-gradient(22% 18% at 85% 75%, rgb(255 79 184 / 0.09), transparent 70%);
  animation: amb-nube 40s ease-in-out infinite alternate;
}
:root[data-tema="nebulosa"] .ambiente__deco3 {
  display: block;
  bottom: 8vh;
  left: 4vw;
  width: clamp(120px, 16vw, 220px);
  aspect-ratio: 5 / 3;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 120'%3E%3Cdefs%3E%3CradialGradient id='p' cx='.35' cy='.32' r='.75'%3E%3Cstop offset='0' stop-color='%23b3a6ff'/%3E%3Cstop offset='.6' stop-color='%235a46d8'/%3E%3Cstop offset='1' stop-color='%231b1460'/%3E%3C/radialGradient%3E%3C/defs%3E%3Cellipse cx='100' cy='62' rx='92' ry='20' fill='none' stroke='%23c9c1ff' stroke-opacity='.3' stroke-width='3'/%3E%3Ccircle cx='100' cy='60' r='38' fill='url(%23p)'/%3E%3Cpath d='M8 62a92 20 0 0 0 184 0' fill='none' stroke='%23c9c1ff' stroke-opacity='.75' stroke-width='3'/%3E%3C/svg%3E") no-repeat center / contain;
  opacity: 0.55;
  animation: amb-flota-suave 14s ease-in-out infinite alternate;
}
:root[data-tema="nebulosa"] .ambiente__deco2,
:root[data-tema="nebulosa"] .ambiente__deco2::before {
  display: block;
  width: 140px;
  height: 2px;
  border-radius: 2px;
  background: linear-gradient(90deg, #fff, rgb(255 255 255 / 0));
  opacity: 0;
  animation: amb-fugaz 9s ease-in infinite;
}
:root[data-tema="nebulosa"] .ambiente__deco2 {
  top: 12vh;
  right: -10vw;
  rotate: -28deg;
}
:root[data-tema="nebulosa"] .ambiente__deco2::before {
  content: "";
  position: absolute;
  top: 30vh;
  left: 20vw;
  animation-delay: -4.5s;
  animation-duration: 13s;
}
:root[data-tema="nebulosa"] .ambiente__particulas i {
  width: 9px;
  height: 9px;
  border-radius: 0;
  background: #e6e4ff;
  box-shadow: none;
  clip-path: polygon(50% 0, 58% 42%, 100% 50%, 58% 58%, 50% 100%, 42% 58%, 0 50%, 42% 42%);
}

/* ---------- Día estelar: cielo lavanda, nubes y luces que flotan ---------- */
:root[data-tema="estelar"] .ambiente {
  background:
    linear-gradient(180deg, rgb(214 206 255 / 0.55), transparent 55%),
    radial-gradient(55% 40% at 88% 0%, rgb(var(--brillo-rgb) / 0.12), transparent 70%),
    radial-gradient(50% 40% at 0% 72%, rgb(var(--luz-rgb) / 0.08), transparent 70%);
}
:root[data-tema="estelar"] .ambiente__cielo {
  display: none;
}
:root[data-tema="estelar"] .ambiente__deco {
  display: block;
  top: 9vh;
  right: 5vw;
  width: clamp(130px, 18vw, 240px);
  aspect-ratio: 5 / 3;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 120'%3E%3Cdefs%3E%3CradialGradient id='p' cx='.35' cy='.32' r='.75'%3E%3Cstop offset='0' stop-color='%23ffffff'/%3E%3Cstop offset='.6' stop-color='%23cfc6ff'/%3E%3Cstop offset='1' stop-color='%239d8cf0'/%3E%3C/radialGradient%3E%3C/defs%3E%3Cellipse cx='100' cy='62' rx='92' ry='20' fill='none' stroke='%238a78e8' stroke-opacity='.3' stroke-width='3'/%3E%3Ccircle cx='100' cy='60' r='38' fill='url(%23p)'/%3E%3Cpath d='M8 62a92 20 0 0 0 184 0' fill='none' stroke='%238a78e8' stroke-opacity='.75' stroke-width='3'/%3E%3C/svg%3E") no-repeat center / contain;
  opacity: 0.6;
  animation: amb-flota-suave 16s ease-in-out infinite alternate;
}
:root[data-tema="estelar"] .ambiente__deco2 {
  display: block;
  bottom: 0;
  left: 0;
  width: 200%;
  height: 18vh;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 140' preserveAspectRatio='none'%3E%3Cg fill='%23ffffff' fill-opacity='0.8'%3E%3Cellipse cx='70' cy='110' rx='90' ry='30'/%3E%3Cellipse cx='140' cy='88' rx='58' ry='38'/%3E%3Cellipse cx='210' cy='108' rx='70' ry='28'/%3E%3Cellipse cx='370' cy='116' rx='96' ry='26'/%3E%3Cellipse cx='430' cy='92' rx='54' ry='34'/%3E%3Cellipse cx='500' cy='112' rx='80' ry='28'/%3E%3C/g%3E%3C/svg%3E") repeat-x left bottom / 50% 100%;
  animation: amb-olas 120s linear infinite;
}
:root[data-tema="estelar"] .ambiente__particulas i {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: radial-gradient(circle, rgb(var(--luz-rgb) / 0.2), transparent 70%);
  animation-name: amb-flota;
  animation-duration: calc(var(--t) * 1.5);
  animation-timing-function: ease-in-out;
  animation-direction: alternate;
}
:root[data-tema="estelar"] .ambiente__particulas i:nth-child(even) {
  width: 60px;
  height: 60px;
  background: radial-gradient(circle, rgb(var(--brillo-rgb) / 0.18), transparent 70%);
}
:root[data-tema="estelar"] .ambiente__particulas i:nth-child(3n) {
  width: 130px;
  height: 130px;
}

/* ---------- Boreal: aurora sobre montañas nevadas ---------- */
:root[data-tema="boreal"] .ambiente {
  background: linear-gradient(180deg, #021013, transparent 70%), radial-gradient(60% 40% at 50% 100%, rgb(47 184 255 / 0.12), transparent 70%);
}
:root[data-tema="boreal"] .ambiente__deco,
:root[data-tema="boreal"] .ambiente__deco2 {
  display: block;
  left: -30vw;
  width: 160vw;
  height: 46vh;
  -webkit-mask: radial-gradient(60% 70% at 50% 40%, #000, transparent 75%);
  mask: radial-gradient(60% 70% at 50% 40%, #000, transparent 75%);
}
:root[data-tema="boreal"] .ambiente__deco {
  top: -6vh;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 800 300' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='a' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%235dffc9' stop-opacity='0'/%3E%3Cstop offset='.22' stop-color='%235dffc9' stop-opacity='.6'/%3E%3Cstop offset='.55' stop-color='%232fb8ff' stop-opacity='.22'/%3E%3Cstop offset='1' stop-color='%232fb8ff' stop-opacity='0'/%3E%3C/linearGradient%3E%3Cpattern id='r' width='14' height='300' patternUnits='userSpaceOnUse'%3E%3Crect width='4' height='300' fill='%23fff'/%3E%3Crect x='4' width='3' height='300' fill='%23fff' fill-opacity='.35'/%3E%3Crect x='7' width='5' height='300' fill='%23fff' fill-opacity='.7'/%3E%3C/pattern%3E%3Cmask id='m'%3E%3Crect width='800' height='300' fill='url(%23r)'/%3E%3C/mask%3E%3C/defs%3E%3Cpath d='M0 120C110 50 220 170 360 100S620 40 800 110V300H0z' fill='url(%23a)' mask='url(%23m)'/%3E%3C/svg%3E") no-repeat center / 100% 100%;
  animation: amb-aurora 14s ease-in-out infinite alternate;
}
:root[data-tema="boreal"] .ambiente__deco2 {
  top: 6vh;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 800 300' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='a' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%239b6bff' stop-opacity='0'/%3E%3Cstop offset='.22' stop-color='%239b6bff' stop-opacity='.6'/%3E%3Cstop offset='.55' stop-color='%235dffc9' stop-opacity='.22'/%3E%3Cstop offset='1' stop-color='%235dffc9' stop-opacity='0'/%3E%3C/linearGradient%3E%3Cpattern id='r' width='14' height='300' patternUnits='userSpaceOnUse'%3E%3Crect width='4' height='300' fill='%23fff'/%3E%3Crect x='4' width='3' height='300' fill='%23fff' fill-opacity='.35'/%3E%3Crect x='7' width='5' height='300' fill='%23fff' fill-opacity='.7'/%3E%3C/pattern%3E%3Cmask id='m'%3E%3Crect width='800' height='300' fill='url(%23r)'/%3E%3C/mask%3E%3C/defs%3E%3Cpath d='M0 120C110 50 220 170 360 100S620 40 800 110V300H0z' fill='url(%23a)' mask='url(%23m)'/%3E%3C/svg%3E") no-repeat center / 100% 100%;
  opacity: 0.7;
  animation: amb-aurora 19s ease-in-out infinite alternate-reverse;
}
:root[data-tema="boreal"] .ambiente__deco3 {
  display: block;
  right: 0;
  bottom: 0;
  left: 0;
  height: 28vh;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 240' preserveAspectRatio='none'%3E%3Cpath d='M0 240V200L75 20L133 191L205 56L267 184L338 76L400 177L470 112L533 181L595 159L667 189L737 140L800 198L866 136L933 172L992 157L1067 185L1137 177L1200 181V240z' fill='%2312424a'/%3E%3Cpath d='M0 240V228L99 20L200 219L307 29L400 216L499 122L600 214L694 76L800 207L898 48L1000 210L1098 184L1200 225V240z' fill='%230a2c32'/%3E%3Cpath d='M85 36L99 20L113 36l-7-4-7 5-7-5z' fill='%23bff5e6'/%3E%3Cpath d='M293 45L307 29L321 45l-7-4-7 5-7-5z' fill='%23bff5e6'/%3E%3Cpath d='M485 138L499 122L513 138l-7-4-7 5-7-5z' fill='%23bff5e6'/%3E%3Cpath d='M680 92L694 76L708 92l-7-4-7 5-7-5z' fill='%23bff5e6'/%3E%3Cpath d='M884 64L898 48L912 64l-7-4-7 5-7-5z' fill='%23bff5e6'/%3E%3Cpath d='M1084 200L1098 184L1112 200l-7-4-7 5-7-5z' fill='%23bff5e6'/%3E%3C/svg%3E") no-repeat bottom / 100% 100%;
}

/* ---------- Eclipse: un sol tapado, su corona, volcanes y brasas ---------- */
:root[data-tema="eclipse"] .ambiente__deco {
  display: block;
  top: 9vh;
  right: 8vw;
  width: clamp(96px, 11vw, 140px);
  aspect-ratio: 1;
  border-radius: 50%;
  background: var(--tinta);
  box-shadow: 0 0 0 3px #ffd25a, 0 0 30px 8px rgb(255 138 61 / 0.7), 0 0 90px 30px rgb(255 138 61 / 0.25);
}
/* Los rayos de la corona giran despacio; la corona late con opacidad. */
:root[data-tema="eclipse"] .ambiente__deco::before {
  content: "";
  position: absolute;
  inset: -80%;
  z-index: -1;
  border-radius: 50%;
  background: repeating-conic-gradient(from 0deg, rgb(255 210 90 / 0.16) 0 2deg, transparent 2deg 11deg);
  -webkit-mask: radial-gradient(circle, transparent 30%, #000 34%, transparent 70%);
  mask: radial-gradient(circle, transparent 30%, #000 34%, transparent 70%);
  animation: amb-gira 90s linear infinite;
}
:root[data-tema="eclipse"] .ambiente__deco::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  box-shadow: 0 0 0 3px #ffe38f, 0 0 40px 12px rgb(255 138 61 / 0.45), 0 0 120px 40px rgb(255 138 61 / 0.12);
  opacity: 0;
  animation: amb-corona 5s ease-in-out infinite;
}
:root[data-tema="eclipse"] .ambiente__deco2 {
  display: block;
  right: 0;
  bottom: 0;
  left: 0;
  height: 26vh;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 220' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23ff8a3d' stop-opacity='.45'/%3E%3Cstop offset='.3' stop-color='%23ff8a3d' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M0 220V150l90-30 70 22 110-70 60 40 40-18 90 60 120-40 80 30 140-100 60 50 70-20 100 60 120-30 50 20V220z' fill='%231a0910'/%3E%3Cpath d='M0 220V150l90-30 70 22 110-70 60 40 40-18 90 60 120-40 80 30 140-100 60 50 70-20 100 60 120-30 50 20V220z' fill='url(%23g)'/%3E%3Cpath d='M0 150l90-30 70 22 110-70 60 40 40-18 90 60 120-40 80 30 140-100 60 50 70-20 100 60 120-30 50 20' fill='none' stroke='%23ffb347' stroke-opacity='.55' stroke-width='2'/%3E%3C/svg%3E") no-repeat bottom / 100% 100%;
}
:root[data-tema="eclipse"] .ambiente__particulas i {
  top: 104vh;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #ffb347;
  box-shadow: 0 0 8px #ff8a3d;
  animation-name: amb-sube;
  animation-duration: calc(var(--t) * 1.2);
}

/* ---------- Sintonía: una antena, ondas rosas y un ecualizador ---------- */
:root[data-tema="sintonia"] .ambiente__deco3 {
  display: block;
  bottom: 0;
  left: 4vw;
  height: 36vh;
  aspect-ratio: 120 / 260;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 260'%3E%3Cg stroke='%23ff7edb' stroke-opacity='.55' stroke-width='2.5' fill='none' stroke-linecap='round'%3E%3Cpath d='M60 24L28 258M60 24l32 234'/%3E%3Cpath d='M36 210h48M41 168h38M46 126h28M51 84h18M55 50h10'/%3E%3Cpath d='M36 210l43-42M84 210L41 168M41 168l33-42M79 168L46 126M46 126l23-42M74 126L51 84M51 84l14-34M69 84L55 50'/%3E%3C/g%3E%3Ccircle cx='60' cy='18' r='6' fill='%23ffd1f2'/%3E%3C/svg%3E") no-repeat bottom / contain;
}
:root[data-tema="sintonia"] .ambiente__deco3::after {
  content: "";
  position: absolute;
  top: 3%;
  left: 50%;
  width: 14px;
  height: 14px;
  margin-left: -7px;
  border-radius: 50%;
  background: radial-gradient(circle, #ffd1f2, rgb(255 126 219 / 0) 70%);
  animation: amb-corona 1.6s ease-in-out infinite;
}
/* Las ondas salen de la punta de la antena. */
:root[data-tema="sintonia"] .ambiente__deco,
:root[data-tema="sintonia"] .ambiente__deco::before,
:root[data-tema="sintonia"] .ambiente__deco::after {
  border: 2px solid rgb(255 126 219 / 0.35);
  border-radius: 50%;
  animation: amb-onda 6s ease-out infinite;
}
:root[data-tema="sintonia"] .ambiente__deco {
  display: block;
  bottom: calc(34.5vh - 30vmax);
  left: calc(4vw + 8.3vh - 30vmax);
  width: 60vmax;
  height: 60vmax;
}
:root[data-tema="sintonia"] .ambiente__deco::before,
:root[data-tema="sintonia"] .ambiente__deco::after {
  content: "";
  position: absolute;
  inset: -2px;
}
:root[data-tema="sintonia"] .ambiente__deco::before {
  animation-delay: -2s;
}
:root[data-tema="sintonia"] .ambiente__deco::after {
  animation-delay: -4s;
}
:root[data-tema="sintonia"] .ambiente__particulas i {
  top: auto;
  bottom: 0;
  width: 1.4vw;
  height: 14vh;
  border-radius: 6px 6px 0 0;
  background: linear-gradient(180deg, rgb(255 126 219 / 0.4), rgb(155 107 255 / 0.08));
  transform-origin: 50% 100%;
  animation-name: amb-ecualizador;
  animation-duration: calc(var(--t) / 8);
  animation-timing-function: ease-in-out;
  animation-direction: alternate;
}

/* ---------- Selva: lianas, hojas grandes, la luna y luciérnagas ---------- */
:root[data-tema="selva"] .ambiente__deco {
  display: block;
  top: 8vh;
  right: 9vw;
  width: clamp(70px, 8vw, 110px);
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle, #f1ffd6 0 36%, rgb(214 255 122 / 0.22) 40%, transparent 70%);
}
:root[data-tema="selva"] .ambiente__deco3 {
  display: block;
  top: 0;
  right: 0;
  left: 0;
  height: 44vh;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 640 240'%3E%3Cpath d='M30 0C48 64 12 127 34 212' fill='none' stroke='%232a6b3c' stroke-width='3'/%3E%3Cpath d='M141 0C159 60 123 120 145 200' fill='none' stroke='%232a6b3c' stroke-width='3'/%3E%3Cpath d='M206 0C224 59 188 118 210 197' fill='none' stroke='%232a6b3c' stroke-width='3'/%3E%3Cpath d='M315 0C333 49 297 99 319 164' fill='none' stroke='%232a6b3c' stroke-width='3'/%3E%3Cpath d='M378 0C396 60 360 120 382 200' fill='none' stroke='%232a6b3c' stroke-width='3'/%3E%3Cpath d='M457 0C475 68 439 136 461 226' fill='none' stroke='%232a6b3c' stroke-width='3'/%3E%3Cpath d='M554 0C572 63 536 125 558 209' fill='none' stroke='%232a6b3c' stroke-width='3'/%3E%3Cellipse cx='40' cy='30' rx='11' ry='5' transform='rotate(35 40 30)' fill='%232f8a4a'/%3E%3Cellipse cx='20' cy='61' rx='11' ry='5' transform='rotate(-35 20 61)' fill='%232f8a4a'/%3E%3Cellipse cx='40' cy='91' rx='11' ry='5' transform='rotate(35 40 91)' fill='%2347a85c'/%3E%3Cellipse cx='20' cy='121' rx='11' ry='5' transform='rotate(-35 20 121)' fill='%232f8a4a'/%3E%3Cellipse cx='40' cy='152' rx='11' ry='5' transform='rotate(35 40 152)' fill='%232f8a4a'/%3E%3Cellipse cx='20' cy='182' rx='11' ry='5' transform='rotate(-35 20 182)' fill='%2347a85c'/%3E%3Cellipse cx='151' cy='29' rx='11' ry='5' transform='rotate(35 151 29)' fill='%232f8a4a'/%3E%3Cellipse cx='131' cy='57' rx='11' ry='5' transform='rotate(-35 131 57)' fill='%232f8a4a'/%3E%3Cellipse cx='151' cy='86' rx='11' ry='5' transform='rotate(35 151 86)' fill='%2347a85c'/%3E%3Cellipse cx='131' cy='114' rx='11' ry='5' transform='rotate(-35 131 114)' fill='%232f8a4a'/%3E%3Cellipse cx='151' cy='143' rx='11' ry='5' transform='rotate(35 151 143)' fill='%232f8a4a'/%3E%3Cellipse cx='131' cy='171' rx='11' ry='5' transform='rotate(-35 131 171)' fill='%2347a85c'/%3E%3Cellipse cx='216' cy='28' rx='11' ry='5' transform='rotate(35 216 28)' fill='%232f8a4a'/%3E%3Cellipse cx='196' cy='56' rx='11' ry='5' transform='rotate(-35 196 56)' fill='%232f8a4a'/%3E%3Cellipse cx='216' cy='84' rx='11' ry='5' transform='rotate(35 216 84)' fill='%2347a85c'/%3E%3Cellipse cx='196' cy='112' rx='11' ry='5' transform='rotate(-35 196 112)' fill='%232f8a4a'/%3E%3Cellipse cx='216' cy='141' rx='11' ry='5' transform='rotate(35 216 141)' fill='%232f8a4a'/%3E%3Cellipse cx='196' cy='169' rx='11' ry='5' transform='rotate(-35 196 169)' fill='%2347a85c'/%3E%3Cellipse cx='325' cy='23' rx='11' ry='5' transform='rotate(35 325 23)' fill='%232f8a4a'/%3E%3Cellipse cx='305' cy='47' rx='11' ry='5' transform='rotate(-35 305 47)' fill='%232f8a4a'/%3E%3Cellipse cx='325' cy='70' rx='11' ry='5' transform='rotate(35 325 70)' fill='%2347a85c'/%3E%3Cellipse cx='305' cy='94' rx='11' ry='5' transform='rotate(-35 305 94)' fill='%232f8a4a'/%3E%3Cellipse cx='325' cy='117' rx='11' ry='5' transform='rotate(35 325 117)' fill='%232f8a4a'/%3E%3Cellipse cx='305' cy='141' rx='11' ry='5' transform='rotate(-35 305 141)' fill='%2347a85c'/%3E%3Cellipse cx='388' cy='29' rx='11' ry='5' transform='rotate(35 388 29)' fill='%232f8a4a'/%3E%3Cellipse cx='368' cy='57' rx='11' ry='5' transform='rotate(-35 368 57)' fill='%232f8a4a'/%3E%3Cellipse cx='388' cy='86' rx='11' ry='5' transform='rotate(35 388 86)' fill='%2347a85c'/%3E%3Cellipse cx='368' cy='114' rx='11' ry='5' transform='rotate(-35 368 114)' fill='%232f8a4a'/%3E%3Cellipse cx='388' cy='143' rx='11' ry='5' transform='rotate(35 388 143)' fill='%232f8a4a'/%3E%3Cellipse cx='368' cy='171' rx='11' ry='5' transform='rotate(-35 368 171)' fill='%2347a85c'/%3E%3Cellipse cx='467' cy='32' rx='11' ry='5' transform='rotate(35 467 32)' fill='%232f8a4a'/%3E%3Cellipse cx='447' cy='65' rx='11' ry='5' transform='rotate(-35 447 65)' fill='%232f8a4a'/%3E%3Cellipse cx='467' cy='97' rx='11' ry='5' transform='rotate(35 467 97)' fill='%2347a85c'/%3E%3Cellipse cx='447' cy='129' rx='11' ry='5' transform='rotate(-35 447 129)' fill='%232f8a4a'/%3E%3Cellipse cx='467' cy='162' rx='11' ry='5' transform='rotate(35 467 162)' fill='%232f8a4a'/%3E%3Cellipse cx='447' cy='194' rx='11' ry='5' transform='rotate(-35 447 194)' fill='%2347a85c'/%3E%3Cellipse cx='564' cy='30' rx='11' ry='5' transform='rotate(35 564 30)' fill='%232f8a4a'/%3E%3Cellipse cx='544' cy='60' rx='11' ry='5' transform='rotate(-35 544 60)' fill='%232f8a4a'/%3E%3Cellipse cx='564' cy='90' rx='11' ry='5' transform='rotate(35 564 90)' fill='%2347a85c'/%3E%3Cellipse cx='544' cy='119' rx='11' ry='5' transform='rotate(-35 544 119)' fill='%232f8a4a'/%3E%3Cellipse cx='564' cy='149' rx='11' ry='5' transform='rotate(35 564 149)' fill='%232f8a4a'/%3E%3Cellipse cx='544' cy='179' rx='11' ry='5' transform='rotate(-35 544 179)' fill='%2347a85c'/%3E%3C/svg%3E") repeat-x left top / auto 100%;
  transform-origin: 50% 0;
  animation: amb-vaiven 9s ease-in-out infinite alternate;
}
:root[data-tema="selva"] .ambiente__deco2 {
  display: block;
  right: 0;
  bottom: 0;
  left: 0;
  height: 32vh;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 220'%3E%3Cg fill='%231a5230'%3E%3Cpath d='M0 220C18 150 52 104 112 82 78 116 56 160 46 220z'/%3E%3Cpath d='M8 220C10 160 30 118 64 94 47 128 38 172 38 220z'/%3E%3Cpath d='M60 220c22-46 66-76 130-86-48 22-80 52-92 86z'/%3E%3C/g%3E%3Cg fill='%23246b3c'%3E%3Cpath d='M24 220c6-50 30-90 70-112-24 34-38 72-40 112z'/%3E%3C/g%3E%3Cg fill='none' stroke='%230f3a20' stroke-width='2'%3E%3Cpath d='M30 200c20-40 44-70 72-96M78 210c20-30 48-52 90-64'/%3E%3C/g%3E%3C/svg%3E") no-repeat left bottom / auto 100%,
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 220'%3E%3Cg fill='%231a5230'%3E%3Cpath d='M220 220C202 150 168 104 108 82 142 116 164 160 174 220z'/%3E%3Cpath d='M212 220c-2-60-22-102-56-126 17 34 26 78 26 126z'/%3E%3Cpath d='M160 220c-22-46-66-76-130-86 48 22 80 52 92 86z'/%3E%3C/g%3E%3Cg fill='none' stroke='%230f3a20' stroke-width='2'%3E%3Cpath d='M190 200c-20-40-44-70-72-96'/%3E%3C/g%3E%3C/svg%3E") no-repeat right bottom / auto 100%;
  opacity: 0.9;
}
:root[data-tema="selva"] .ambiente__particulas i {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #d6ff7a;
  box-shadow: 0 0 10px 2px rgb(182 255 90 / 0.7);
  animation-name: amb-luciernaga;
  animation-duration: calc(var(--t) * 0.8);
  animation-timing-function: ease-in-out;
}

/* ---------- Abismo: el fondo del mar. Negro puro, medusas y nieve marina ---------- */
:root[data-tema="abismo"] .ambiente {
  background: radial-gradient(70% 30% at 50% 100%, rgb(77 240 255 / 0.05), transparent 70%);
}
:root[data-tema="abismo"] .ambiente__cielo {
  display: none;
}
:root[data-tema="abismo"] .ambiente__deco {
  display: block;
  top: 18vh;
  right: 9vw;
  width: clamp(90px, 11vw, 150px);
  aspect-ratio: 120 / 210;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 210'%3E%3Cdefs%3E%3CradialGradient id='b' cx='.5' cy='.35' r='.65'%3E%3Cstop offset='0' stop-color='%23e6fdff' stop-opacity='.95'/%3E%3Cstop offset='.45' stop-color='%234df0ff' stop-opacity='.5'/%3E%3Cstop offset='1' stop-color='%237ce7ff' stop-opacity='.06'/%3E%3C/radialGradient%3E%3C/defs%3E%3Cpath d='M12 66C12 30 34 8 60 8s48 22 48 58c-8-6-16-6-24 0-8-6-16-6-24 0-8-6-16-6-24 0-8-6-16-6-24 0z' fill='url(%23b)'/%3E%3Cpath d='M12 66C12 30 34 8 60 8s48 22 48 58' fill='none' stroke='%237ce7ff' stroke-opacity='.7' stroke-width='2'/%3E%3Cg fill='none' stroke='%237ce7ff' stroke-opacity='.55' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M28 68c-7 32 9 62-2 128'/%3E%3Cpath d='M48 68c5 36-9 66 2 118'/%3E%3Cpath d='M72 68c-5 36 9 66-2 124'/%3E%3Cpath d='M92 68c7 32-9 64 2 110'/%3E%3C/g%3E%3Cg fill='%23ffffff' fill-opacity='.7'%3E%3Ccircle cx='42' cy='34' r='3'/%3E%3Ccircle cx='70' cy='26' r='2'/%3E%3C/g%3E%3C/svg%3E") no-repeat center / contain;
  opacity: 0.85;
  animation: amb-medusa 9s ease-in-out infinite;
}
:root[data-tema="abismo"] .ambiente__deco2 {
  display: block;
  top: 52vh;
  left: 7vw;
  width: clamp(44px, 5.5vw, 76px);
  aspect-ratio: 120 / 210;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 210'%3E%3Cdefs%3E%3CradialGradient id='b' cx='.5' cy='.35' r='.65'%3E%3Cstop offset='0' stop-color='%23e6fdff' stop-opacity='.95'/%3E%3Cstop offset='.45' stop-color='%239b7bff' stop-opacity='.5'/%3E%3Cstop offset='1' stop-color='%23b8a6ff' stop-opacity='.06'/%3E%3C/radialGradient%3E%3C/defs%3E%3Cpath d='M12 66C12 30 34 8 60 8s48 22 48 58c-8-6-16-6-24 0-8-6-16-6-24 0-8-6-16-6-24 0-8-6-16-6-24 0z' fill='url(%23b)'/%3E%3Cpath d='M12 66C12 30 34 8 60 8s48 22 48 58' fill='none' stroke='%23b8a6ff' stroke-opacity='.7' stroke-width='2'/%3E%3Cg fill='none' stroke='%23c4b6ff' stroke-opacity='.55' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M28 68c-7 32 9 62-2 128'/%3E%3Cpath d='M48 68c5 36-9 66 2 118'/%3E%3Cpath d='M72 68c-5 36 9 66-2 124'/%3E%3Cpath d='M92 68c7 32-9 64 2 110'/%3E%3C/g%3E%3Cg fill='%23ffffff' fill-opacity='.7'%3E%3Ccircle cx='42' cy='34' r='3'/%3E%3Ccircle cx='70' cy='26' r='2'/%3E%3C/g%3E%3C/svg%3E") no-repeat center / contain;
  opacity: 0.7;
  animation: amb-medusa 12s ease-in-out -4s infinite;
}
:root[data-tema="abismo"] .ambiente__deco3 {
  display: block;
  right: 0;
  bottom: 0;
  left: 0;
  height: 18vh;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 220' preserveAspectRatio='none'%3E%3Cpath d='M0 220V178c90-20 160 6 240-8s170-30 260-6 160 22 250 4 180-24 260-6 110 14 190 2V220z' fill='%2303070c'/%3E%3Cg fill='none' stroke='%230b2a35' stroke-width='5' stroke-linecap='round'%3E%3Cpath d='M160 186c0-30-14-44-10-70M160 160c10-8 18-18 18-34M480 182c0-24 8-40 4-62M484 150c-12-6-18-18-18-30M900 184c0-28-10-46-4-70M902 152c12-8 16-20 16-34'/%3E%3C/g%3E%3Ccircle cx='0' cy='170' r='2.9' fill='%23b8a6ff' fill-opacity='0.69'/%3E%3Ccircle cx='271' cy='183' r='1.8' fill='%23b8a6ff' fill-opacity='0.82'/%3E%3Ccircle cx='787' cy='158' r='1.8' fill='%23b8a6ff' fill-opacity='0.78'/%3E%3Ccircle cx='576' cy='159' r='1.5' fill='%234df0ff' fill-opacity='0.50'/%3E%3Ccircle cx='932' cy='190' r='1.9' fill='%234df0ff' fill-opacity='0.86'/%3E%3Ccircle cx='466' cy='152' r='2.2' fill='%234df0ff' fill-opacity='0.47'/%3E%3Ccircle cx='49' cy='159' r='2.3' fill='%234df0ff' fill-opacity='0.55'/%3E%3Ccircle cx='998' cy='203' r='2.9' fill='%234df0ff' fill-opacity='0.43'/%3E%3Ccircle cx='183' cy='175' r='2.7' fill='%234df0ff' fill-opacity='0.65'/%3E%3Ccircle cx='478' cy='201' r='1.4' fill='%234df0ff' fill-opacity='0.60'/%3E%3Ccircle cx='353' cy='196' r='2.7' fill='%23b8a6ff' fill-opacity='0.83'/%3E%3Ccircle cx='594' cy='153' r='2.2' fill='%23b8a6ff' fill-opacity='0.90'/%3E%3Ccircle cx='1024' cy='189' r='1.1' fill='%234df0ff' fill-opacity='0.68'/%3E%3Ccircle cx='361' cy='197' r='3.0' fill='%23b8a6ff' fill-opacity='0.62'/%3E%3Ccircle cx='628' cy='191' r='1.3' fill='%23b8a6ff' fill-opacity='0.64'/%3E%3Ccircle cx='392' cy='153' r='2.3' fill='%23b8a6ff' fill-opacity='0.61'/%3E%3Ccircle cx='382' cy='158' r='2.0' fill='%234df0ff' fill-opacity='0.73'/%3E%3Ccircle cx='930' cy='168' r='2.9' fill='%234df0ff' fill-opacity='0.56'/%3E%3Ccircle cx='835' cy='157' r='2.2' fill='%234df0ff' fill-opacity='0.65'/%3E%3Ccircle cx='1101' cy='186' r='2.5' fill='%234df0ff' fill-opacity='0.75'/%3E%3Ccircle cx='877' cy='176' r='2.0' fill='%234df0ff' fill-opacity='0.44'/%3E%3Ccircle cx='1038' cy='179' r='1.2' fill='%234df0ff' fill-opacity='0.62'/%3E%3Ccircle cx='632' cy='192' r='1.6' fill='%23b8a6ff' fill-opacity='0.71'/%3E%3Ccircle cx='945' cy='166' r='1.0' fill='%234df0ff' fill-opacity='0.55'/%3E%3Ccircle cx='3' cy='154' r='1.2' fill='%234df0ff' fill-opacity='0.84'/%3E%3Ccircle cx='509' cy='207' r='2.8' fill='%234df0ff' fill-opacity='0.64'/%3E%3Ccircle cx='325' cy='181' r='2.9' fill='%23b8a6ff' fill-opacity='0.77'/%3E%3Ccircle cx='954' cy='179' r='2.7' fill='%23b8a6ff' fill-opacity='0.85'/%3E%3Ccircle cx='568' cy='182' r='1.7' fill='%234df0ff' fill-opacity='0.62'/%3E%3Ccircle cx='587' cy='191' r='2.3' fill='%23b8a6ff' fill-opacity='0.46'/%3E%3Ccircle cx='376' cy='193' r='1.3' fill='%234df0ff' fill-opacity='0.67'/%3E%3Ccircle cx='919' cy='161' r='2.0' fill='%234df0ff' fill-opacity='0.65'/%3E%3Ccircle cx='215' cy='193' r='2.7' fill='%234df0ff' fill-opacity='0.87'/%3E%3Ccircle cx='906' cy='154' r='2.4' fill='%23b8a6ff' fill-opacity='0.67'/%3E%3Ccircle cx='395' cy='164' r='1.1' fill='%23b8a6ff' fill-opacity='0.57'/%3E%3Ccircle cx='67' cy='171' r='1.9' fill='%234df0ff' fill-opacity='0.41'/%3E%3Ccircle cx='641' cy='206' r='2.4' fill='%234df0ff' fill-opacity='0.65'/%3E%3Ccircle cx='124' cy='176' r='3.0' fill='%23b8a6ff' fill-opacity='0.60'/%3E%3Ccircle cx='662' cy='192' r='2.6' fill='%234df0ff' fill-opacity='0.87'/%3E%3Ccircle cx='305' cy='174' r='2.8' fill='%23b8a6ff' fill-opacity='0.51'/%3E%3C/svg%3E") no-repeat bottom / 100% 100%;
}
:root[data-tema="abismo"] .ambiente__particulas i {
  top: -4vh;
  width: 2px;
  height: 2px;
  border-radius: 50%;
  background: rgb(190 230 255 / 0.6);
  animation-name: amb-nieve-marina;
  animation-duration: calc(var(--t) * 2.4);
}

/* ---------- Lavanda: campo de lavanda bajo la luna ---------- */
:root[data-tema="lavanda"] .ambiente__deco {
  display: block;
  top: 10vh;
  right: 8vw;
  width: clamp(76px, 8vw, 104px);
  aspect-ratio: 1;
  border-radius: 50%;
  box-shadow: inset -24px 10px 0 0 #ede4ff;
  filter: drop-shadow(0 0 26px rgb(201 182 255 / 0.65));
}
:root[data-tema="lavanda"] .ambiente__deco::before {
  content: "";
  position: absolute;
  top: 40%;
  left: -60%;
  width: 180%;
  height: 50%;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 60'%3E%3Cg fill='%23e6dcff' fill-opacity='.22'%3E%3Cellipse cx='50' cy='40' rx='44' ry='16'/%3E%3Cellipse cx='88' cy='30' rx='36' ry='22'/%3E%3Cellipse cx='122' cy='42' rx='34' ry='14'/%3E%3C/g%3E%3C/svg%3E") no-repeat center / contain;
  animation: amb-nube-pasa 26s ease-in-out infinite alternate;
}
:root[data-tema="lavanda"] .ambiente__deco2 {
  display: block;
  right: 0;
  bottom: 0;
  left: 0;
  height: 24vh;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 220' preserveAspectRatio='none'%3E%3Cpath d='M0 220V172c180-26 380-8 600-18s420-22 600 6V220z' fill='%23150f26'/%3E%3Cpath d='M0 184q-1.9 -26 -0.2 -52M20 162q2.3 -42 -1.5 -84M35 186q0.1 -34 -0.6 -68M43 176q2.2 -28 1.8 -57M57 167q2.6 -43 -1.1 -86M69 161q-1.2 -39 1.4 -79M81 176q-2.5 -34 -0.4 -67M98 185q0.6 -27 -1.7 -54M115 167q-2.1 -40 0.7 -80M122 184q3.0 -43 -1.2 -86M141 161q-2.4 -32 1.2 -63M150 172q-3.0 -32 0.7 -65M168 166q-2.8 -38 -0.4 -76M181 181q1.2 -45 -1.0 -90M187 187q-1.8 -25 -0.8 -50M204 172q0.0 -25 1.6 -50M218 175q-1.2 -37 -1.2 -75M234 172q2.9 -43 -1.6 -86M243 174q0.5 -31 -2.0 -62M256 164q2.1 -21 -0.9 -41M273 178q2.1 -36 1.1 -72M282 169q0.1 -31 1.7 -63M294 188q-1.8 -30 -0.0 -60M307 161q-0.3 -29 1.0 -58M320 162q-1.6 -23 -1.3 -47M336 168q2.8 -34 1.9 -68M347 181q2.9 -35 1.9 -71M361 190q2.0 -32 -1.2 -65M383 161q0.1 -32 -0.9 -64M397 167q-2.4 -41 -0.0 -83M404 169q1.7 -34 -1.8 -67M420 177q-0.9 -36 -0.7 -73M436 189q2.7 -23 -1.0 -46M447 183q1.1 -26 -1.8 -52M461 189q-2.2 -21 -1.5 -43M467 164q-0.2 -44 -1.9 -87M484 187q3.0 -35 0.7 -70M498 187q-3.0 -45 1.5 -90M514 168q2.8 -30 -1.0 -61M523 186q-1.0 -41 -0.9 -82M536 187q3.0 -31 -0.2 -62M554 179q0.3 -36 -1.1 -72M564 177q-2.3 -29 -1.0 -58M578 167q0.8 -22 1.4 -44M597 163q2.2 -30 -0.4 -59M605 171q1.7 -20 -0.7 -41M614 165q-2.3 -43 1.3 -87M632 175q2.4 -36 0.6 -71M648 170q-0.0 -34 -1.7 -69M656 189q1.4 -39 -1.5 -78M667 161q-3.0 -21 -1.8 -41M684 161q-2.8 -44 1.2 -87M695 174q0.6 -24 0.5 -48M714 172q0.4 -30 -1.6 -60M729 181q2.1 -24 -0.2 -48M738 165q0.5 -32 -0.3 -65M752 175q-1.4 -31 1.0 -62M761 160q-0.3 -33 1.1 -66M778 188q-1.1 -32 -0.9 -63M791 180q0.7 -43 1.9 -86M806 164q2.2 -31 -0.1 -63M817 190q1.8 -21 -1.3 -41M832 164q2.2 -29 0.0 -59M849 169q-0.9 -23 1.4 -46M861 175q2.4 -33 1.8 -66M869 180q1.8 -42 1.8 -84M884 169q1.0 -27 1.8 -55M894 169q-1.4 -31 -1.3 -62M912 183q-2.6 -35 0.9 -71M926 168q-2.1 -29 -1.0 -58M941 163q0.9 -37 -0.4 -74M953 175q2.0 -23 -2.0 -46M965 180q-1.3 -22 -1.9 -43M977 182q2.1 -37 -1.5 -74M992 162q2.8 -44 -1.7 -88M1001 164q0.8 -25 -1.7 -51M1020 178q-2.0 -27 0.1 -55M1029 184q-1.9 -33 1.0 -66M1045 186q-1.3 -25 0.9 -50M1061 188q-2.1 -43 -0.0 -87M1076 177q-1.7 -45 0.8 -90M1083 187q-1.9 -29 0.6 -58M1097 177q-2.2 -43 0.8 -86M1111 163q2.1 -21 -1.7 -43M1122 161q2.3 -23 0.6 -46M1139 177q0.6 -37 -0.3 -74M1156 177q-0.5 -33 1.5 -66M1161 180q0.7 -27 0.2 -55M1177 175q0.6 -42 0.3 -85M1191 185q-0.3 -27 -1.9 -54' fill='none' stroke='%233c2d63' stroke-width='1.6'/%3E%3Cellipse cx='-2' cy='131' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='2' cy='137' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='-2' cy='143' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='2' cy='149' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='18' cy='79' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='22' cy='85' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='18' cy='91' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='22' cy='97' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='33' cy='118' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='37' cy='124' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='33' cy='130' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='37' cy='136' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='41' cy='119' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='45' cy='125' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='41' cy='131' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='45' cy='137' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='55' cy='81' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='59' cy='87' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='55' cy='93' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='59' cy='99' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='67' cy='83' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='71' cy='89' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='67' cy='95' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='71' cy='101' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='79' cy='109' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='83' cy='115' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='79' cy='121' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='83' cy='127' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='96' cy='131' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='100' cy='137' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='96' cy='143' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='100' cy='149' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='113' cy='87' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='117' cy='93' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='113' cy='99' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='117' cy='105' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='120' cy='97' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='124' cy='103' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='120' cy='109' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='124' cy='115' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='139' cy='98' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='143' cy='104' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='139' cy='110' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='143' cy='116' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='148' cy='107' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='152' cy='113' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='148' cy='119' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='152' cy='125' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='166' cy='90' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='170' cy='96' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='166' cy='102' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='170' cy='108' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='179' cy='92' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='183' cy='98' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='179' cy='104' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='183' cy='110' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='185' cy='137' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='189' cy='143' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='185' cy='149' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='189' cy='155' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='202' cy='122' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='206' cy='128' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='202' cy='134' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='206' cy='140' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='216' cy='101' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='220' cy='107' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='216' cy='113' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='220' cy='119' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='232' cy='86' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='236' cy='92' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='232' cy='98' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='236' cy='104' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='241' cy='112' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='245' cy='118' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='241' cy='124' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='245' cy='130' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='254' cy='123' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='258' cy='129' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='254' cy='135' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='258' cy='141' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='271' cy='106' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='275' cy='112' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='271' cy='118' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='275' cy='124' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='280' cy='106' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='284' cy='112' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='280' cy='118' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='284' cy='124' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='292' cy='128' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='296' cy='134' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='292' cy='140' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='296' cy='146' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='305' cy='103' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='309' cy='109' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='305' cy='115' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='309' cy='121' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='318' cy='116' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='322' cy='122' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='318' cy='128' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='322' cy='134' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='334' cy='100' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='338' cy='106' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='334' cy='112' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='338' cy='118' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='345' cy='110' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='349' cy='116' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='345' cy='122' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='349' cy='128' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='359' cy='125' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='363' cy='131' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='359' cy='137' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='363' cy='143' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='381' cy='98' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='385' cy='104' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='381' cy='110' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='385' cy='116' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='395' cy='84' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='399' cy='90' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='395' cy='96' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='399' cy='102' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='402' cy='101' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='406' cy='107' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='402' cy='113' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='406' cy='119' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='418' cy='105' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='422' cy='111' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='418' cy='117' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='422' cy='123' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='434' cy='142' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='438' cy='148' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='434' cy='154' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='438' cy='160' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='445' cy='131' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='449' cy='137' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='445' cy='143' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='449' cy='149' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='459' cy='146' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='463' cy='152' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='459' cy='158' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='463' cy='164' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='465' cy='77' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='469' cy='83' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='465' cy='89' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='469' cy='95' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='482' cy='117' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='486' cy='123' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='482' cy='129' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='486' cy='135' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='496' cy='97' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='500' cy='103' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='496' cy='109' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='500' cy='115' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='512' cy='107' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='516' cy='113' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='512' cy='119' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='516' cy='125' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='521' cy='104' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='525' cy='110' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='521' cy='116' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='525' cy='122' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='534' cy='125' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='538' cy='131' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='534' cy='137' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='538' cy='143' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='552' cy='108' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='556' cy='114' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='552' cy='120' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='556' cy='126' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='562' cy='119' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='566' cy='125' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='562' cy='131' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='566' cy='137' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='576' cy='123' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='580' cy='129' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='576' cy='135' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='580' cy='141' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='595' cy='104' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='599' cy='110' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='595' cy='116' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='599' cy='122' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='603' cy='131' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='607' cy='137' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='603' cy='143' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='607' cy='149' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='612' cy='78' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='616' cy='84' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='612' cy='90' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='616' cy='96' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='630' cy='103' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='634' cy='109' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='630' cy='115' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='634' cy='121' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='646' cy='102' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='650' cy='108' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='646' cy='114' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='650' cy='120' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='654' cy='111' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='658' cy='117' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='654' cy='123' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='658' cy='129' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='665' cy='120' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='669' cy='126' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='665' cy='132' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='669' cy='138' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='682' cy='74' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='686' cy='80' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='682' cy='86' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='686' cy='92' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='693' cy='126' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='697' cy='132' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='693' cy='138' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='697' cy='144' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='712' cy='112' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='716' cy='118' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='712' cy='124' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='716' cy='130' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='727' cy='133' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='731' cy='139' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='727' cy='145' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='731' cy='151' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='736' cy='101' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='740' cy='107' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='736' cy='113' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='740' cy='119' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='750' cy='113' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='754' cy='119' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='750' cy='125' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='754' cy='131' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='759' cy='94' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='763' cy='100' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='759' cy='106' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='763' cy='112' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='776' cy='125' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='780' cy='131' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='776' cy='137' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='780' cy='143' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='789' cy='93' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='793' cy='99' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='789' cy='105' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='793' cy='111' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='804' cy='101' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='808' cy='107' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='804' cy='113' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='808' cy='119' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='815' cy='148' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='819' cy='154' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='815' cy='160' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='819' cy='166' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='830' cy='106' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='834' cy='112' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='830' cy='118' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='834' cy='124' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='847' cy='123' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='851' cy='129' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='847' cy='135' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='851' cy='141' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='859' cy='109' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='863' cy='115' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='859' cy='121' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='863' cy='127' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='867' cy='96' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='871' cy='102' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='867' cy='108' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='871' cy='114' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='882' cy='114' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='886' cy='120' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='882' cy='126' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='886' cy='132' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='892' cy='106' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='896' cy='112' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='892' cy='118' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='896' cy='124' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='910' cy='112' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='914' cy='118' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='910' cy='124' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='914' cy='130' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='924' cy='110' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='928' cy='116' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='924' cy='122' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='928' cy='128' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='939' cy='89' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='943' cy='95' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='939' cy='101' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='943' cy='107' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='951' cy='128' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='955' cy='134' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='951' cy='140' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='955' cy='146' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='963' cy='136' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='967' cy='142' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='963' cy='148' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='967' cy='154' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='975' cy='108' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='979' cy='114' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='975' cy='120' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='979' cy='126' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='990' cy='74' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='994' cy='80' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='990' cy='86' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='994' cy='92' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='999' cy='114' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1003' cy='120' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='999' cy='126' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1003' cy='132' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1018' cy='123' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1022' cy='129' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1018' cy='135' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1022' cy='141' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1027' cy='118' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1031' cy='124' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1027' cy='130' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1031' cy='136' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1043' cy='135' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1047' cy='141' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1043' cy='147' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1047' cy='153' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1059' cy='101' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1063' cy='107' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1059' cy='113' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1063' cy='119' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1074' cy='88' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1078' cy='94' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1074' cy='100' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1078' cy='106' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1081' cy='129' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1085' cy='135' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1081' cy='141' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1085' cy='147' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1095' cy='91' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1099' cy='97' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1095' cy='103' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1099' cy='109' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1109' cy='121' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1113' cy='127' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1109' cy='133' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1113' cy='139' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1120' cy='115' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1124' cy='121' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1120' cy='127' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1124' cy='133' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1137' cy='103' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1141' cy='109' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1137' cy='115' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1141' cy='121' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1154' cy='111' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1158' cy='117' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1154' cy='123' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1158' cy='129' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1159' cy='126' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1163' cy='132' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1159' cy='138' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1163' cy='144' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1175' cy='91' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1179' cy='97' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1175' cy='103' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1179' cy='109' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1189' cy='131' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1193' cy='137' rx='2.6' ry='3.6' fill='%23c9b6ff'/%3E%3Cellipse cx='1189' cy='143' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3Cellipse cx='1193' cy='149' rx='2.6' ry='3.6' fill='%239a7bff'/%3E%3C/svg%3E") no-repeat bottom / 100% 100%;
  transform-origin: 50% 100%;
  animation: amb-brisa 7s ease-in-out infinite alternate;
}
:root[data-tema="lavanda"] .ambiente__particulas i {
  animation-duration: calc(var(--t) / 4);
}

/* ---------- Sakura: rama en flor y pétalos que caen ---------- */
:root[data-tema="sakura"] .ambiente__deco {
  display: block;
  top: 3.5rem;
  right: -10px;
  width: 260px;
  height: 190px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 260 190'%3E%3Cpath d='M262 18C200 26 156 52 118 92 92 118 62 132 22 138M170 58c-12 28-12 54 0 80M118 92c18 8 40 8 62 0' fill='none' stroke='%234a2234' stroke-width='7' stroke-linecap='round'/%3E%3Cg fill='%23ffb3d1'%3E%3Ccircle cx='210' cy='30' r='12'/%3E%3Ccircle cx='160' cy='58' r='10'/%3E%3Ccircle cx='112' cy='96' r='12'/%3E%3Ccircle cx='54' cy='128' r='10'/%3E%3Ccircle cx='172' cy='134' r='10'/%3E%3Ccircle cx='186' cy='92' r='8'/%3E%3Ccircle cx='24' cy='138' r='8'/%3E%3C/g%3E%3Cg fill='%23ffe6f0'%3E%3Ccircle cx='210' cy='30' r='4'/%3E%3Ccircle cx='112' cy='96' r='4'/%3E%3Ccircle cx='172' cy='134' r='4'/%3E%3C/g%3E%3C/svg%3E") no-repeat center / contain;
  opacity: 0.85;
}
:root[data-tema="sakura"] .ambiente__particulas i {
  top: -4vh;
  width: 12px;
  height: 9px;
  border-radius: 80% 0 80% 0;
  background: linear-gradient(135deg, #ffd1e3, #ffb3d1);
  opacity: 0.8;
  animation-name: amb-cae;
}

/* ---------- Obsidiana: rayos de oro, cristales y destellos de diamante ---------- */
:root[data-tema="obsidiana"] .ambiente__cielo {
  display: none;
}
:root[data-tema="obsidiana"] .ambiente__deco {
  display: block;
  top: 0;
  right: 0;
  left: 0;
  height: 70vh;
  background: repeating-conic-gradient(from 90deg at 50% 0%, rgb(232 196 110 / 0.17) 0 0.6deg, transparent 0.6deg 7deg);
  -webkit-mask: linear-gradient(180deg, #000, transparent);
  mask: linear-gradient(180deg, #000, transparent);
}
:root[data-tema="obsidiana"] .ambiente__deco2 {
  display: block;
  top: -130px;
  left: 50%;
  width: 260px;
  height: 260px;
  margin-left: -130px;
  border: 1px solid rgb(232 196 110 / 0.45);
  border-radius: 50%;
  box-shadow: 0 0 0 26px rgb(232 196 110 / 0.04), 0 0 0 27px rgb(232 196 110 / 0.25);
}
:root[data-tema="obsidiana"] .ambiente__deco3 {
  display: block;
  right: 0;
  bottom: 0;
  left: 0;
  height: 22vh;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 220' preserveAspectRatio='none'%3E%3Cg fill='%23120f0c' stroke='%23e8c46e' stroke-opacity='.45' stroke-width='1.5' stroke-linejoin='round'%3E%3Cpath d='M0 220V160l60-50 40 40 30-80 50 90 40-30 30 70z'/%3E%3Cpath d='M260 220l30-110 40 60 30-90 60 140z'/%3E%3Cpath d='M520 220l40-70 30 30 40-100 50 110 30-40 40 70z'/%3E%3Cpath d='M860 220l30-80 40 40 40-120 40 100 30-30 60 90z'/%3E%3Cpath d='M1100 220l30-60 30 20 40-90V220z'/%3E%3C/g%3E%3Cg stroke='%23f4da9c' stroke-opacity='.5' stroke-width='1'%3E%3Cpath d='M130 70l20 100M330 80l-10 90M630 80l-6 100M930 60l8 110'/%3E%3C/g%3E%3C/svg%3E") no-repeat bottom / 100% 100%;
}
:root[data-tema="obsidiana"] .ambiente__particulas i {
  width: 12px;
  height: 12px;
  border-radius: 0;
  background: #bdefff;
  box-shadow: none;
  clip-path: polygon(50% 0, 62% 38%, 100% 50%, 62% 62%, 50% 100%, 38% 62%, 0 50%, 38% 38%);
  animation-duration: calc(var(--t) / 3);
}

/* ---------- Vapor: sol retro, palmeras y rejilla de neón ---------- */
:root[data-tema="vapor"] .ambiente {
  background: linear-gradient(180deg, transparent 40%, rgb(255 113 206 / 0.12) 70%, transparent), radial-gradient(60% 40% at 50% 70%, rgb(255 158 122 / 0.12), transparent 70%);
}
:root[data-tema="vapor"] .ambiente__deco {
  display: block;
  bottom: 16vh;
  left: 50%;
  width: clamp(200px, 26vw, 320px);
  aspect-ratio: 1;
  translate: -50% 0;
  border-radius: 50%;
  background: linear-gradient(180deg, #fffb96, #ff9e7a 45%, #ff71ce);
  -webkit-mask: linear-gradient(180deg, #000 50%, transparent 50% 56%, #000 56% 66%, transparent 66% 71%, #000 71% 80%, transparent 80% 85%, #000 85%);
  mask: linear-gradient(180deg, #000 50%, transparent 50% 56%, #000 56% 66%, transparent 66% 71%, #000 71% 80%, transparent 80% 85%, #000 85%);
  opacity: 0.85;
}
:root[data-tema="vapor"] .ambiente__deco3 {
  display: block;
  right: 0;
  bottom: 22vh;
  left: 0;
  height: 30vh;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 260' preserveAspectRatio='none'%3E%3Cg fill='%2347186b' stroke='%23ff71ce' stroke-opacity='.35' stroke-width='1.5'%3E%3Cpath d='M70 260c6-70 2-130-14-180h8c18 50 22 110 16 180z'/%3E%3Cpath d='M60 84c-40-20-70-10-90 10 30-8 56-6 80 4zM64 82c-20-36-50-46-80-40 30 6 54 22 72 44zM66 84c20-34 52-42 82-34-30 4-56 18-74 38zM68 86c42-10 70 4 86 28-26-14-52-20-80-20z'/%3E%3Cpath d='M1130 260c-6-80-2-140 18-190h-8c-22 50-26 110-20 190z'/%3E%3Cpath d='M1144 74c40-18 70-6 88 14-30-8-56-6-80 4zM1140 72c22-34 52-42 82-34-30 4-56 20-74 40zM1138 74c-20-34-52-44-82-36 30 6 56 20 74 42zM1136 76c-42-8-70 6-86 30 26-14 52-20 80-20z'/%3E%3C/g%3E%3Cg fill='none' stroke='%2301cdfe' stroke-opacity='.45' stroke-width='2'%3E%3Cpath d='M200 260l140-120 120 90 160-150 150 130 130-90 150 140'/%3E%3C/g%3E%3C/svg%3E") no-repeat bottom / 100% 100%;
}
:root[data-tema="vapor"] .ambiente__deco2 {
  display: block;
  right: -50%;
  bottom: 0;
  left: -50%;
  height: 34vh;
  overflow: hidden;
  transform: perspective(320px) rotateX(58deg);
  transform-origin: 50% 100%;
  -webkit-mask: linear-gradient(180deg, transparent, #000 45%);
  mask: linear-gradient(180deg, transparent, #000 45%);
  opacity: 0.8;
}
:root[data-tema="vapor"] .ambiente__deco2::before {
  content: "";
  position: absolute;
  inset: -40px 0 0;
  background-image:
    linear-gradient(rgb(255 113 206 / 0.6) 2px, transparent 2px),
    linear-gradient(90deg, rgb(255 113 206 / 0.6) 2px, transparent 2px);
  background-size: 40px 40px;
  animation: amb-rejilla 1.8s linear infinite;
}
:root[data-tema="vapor"] .ambiente__particulas i {
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #fffb96;
  box-shadow: 0 0 6px #ff71ce;
  animation-name: amb-destello;
  animation-duration: calc(var(--t) / 4);
  animation-timing-function: ease-in-out;
}
:root[data-tema="vapor"] .ambiente__particulas i:nth-child(n+7) {
  display: none;
}

/* ---------- Lofi: lluvia en la ventana, la ciudad de noche y una luz tibia ---------- */
:root[data-tema="lofi"] .ambiente__deco {
  display: block;
  top: 5rem;
  right: 5vw;
  width: clamp(150px, 18vw, 240px);
  aspect-ratio: 220 / 200;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 200'%3E%3Cdefs%3E%3ClinearGradient id='v' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%2326305e'/%3E%3Cstop offset='1' stop-color='%234a3b6e'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect x='8' y='8' width='204' height='150' rx='16' fill='url(%23v)'/%3E%3Ccircle cx='60' cy='46' r='14' fill='%23ffe6c2'/%3E%3Ccircle cx='60' cy='46' r='26' fill='%23ffe6c2' fill-opacity='.18'/%3E%3Cg fill='%23171a36'%3E%3Crect x='16' y='106' width='14' height='44'/%3E%3Crect x='33' y='112' width='31' height='38'/%3E%3Crect x='67' y='65' width='15' height='85'/%3E%3Crect x='85' y='60' width='29' height='90'/%3E%3Crect x='117' y='111' width='28' height='39'/%3E%3Crect x='148' y='112' width='24' height='38'/%3E%3Crect x='175' y='83' width='28' height='67'/%3E%3C/g%3E%3Cg fill='%23ffd59a' fill-opacity='.85'%3E%3Crect x='21' y='122' width='3' height='4'/%3E%3Crect x='21' y='124' width='3' height='4'/%3E%3Crect x='24' y='141' width='3' height='4'/%3E%3Crect x='46' y='120' width='3' height='4'/%3E%3Crect x='59' y='138' width='3' height='4'/%3E%3Crect x='59' y='119' width='3' height='4'/%3E%3Crect x='57' y='133' width='3' height='4'/%3E%3Crect x='74' y='75' width='3' height='4'/%3E%3Crect x='75' y='108' width='3' height='4'/%3E%3Crect x='70' y='125' width='3' height='4'/%3E%3Crect x='103' y='144' width='3' height='4'/%3E%3Crect x='128' y='117' width='3' height='4'/%3E%3Crect x='136' y='127' width='3' height='4'/%3E%3Crect x='126' y='121' width='3' height='4'/%3E%3Crect x='141' y='120' width='3' height='4'/%3E%3Crect x='163' y='138' width='3' height='4'/%3E%3Crect x='157' y='132' width='3' height='4'/%3E%3Crect x='165' y='141' width='3' height='4'/%3E%3Crect x='196' y='142' width='3' height='4'/%3E%3Crect x='195' y='136' width='3' height='4'/%3E%3Crect x='188' y='125' width='3' height='4'/%3E%3C/g%3E%3Cg fill='none' stroke='%23cfe0ff' stroke-opacity='.35' stroke-width='1.4' stroke-linecap='round'%3E%3Cpath d='M169 116q-1 6 0 10'/%3E%3Cpath d='M154 110q-1 6 0 12'/%3E%3Cpath d='M101 67q-1 6 0 7'/%3E%3Cpath d='M170 61q-1 6 0 9'/%3E%3Cpath d='M118 33q-1 6 0 10'/%3E%3Cpath d='M202 58q-1 6 0 8'/%3E%3Cpath d='M164 98q-1 6 0 8'/%3E%3Cpath d='M49 15q-1 6 0 7'/%3E%3Cpath d='M47 108q-1 6 0 10'/%3E%3Cpath d='M24 84q-1 6 0 8'/%3E%3Cpath d='M194 70q-1 6 0 12'/%3E%3Cpath d='M178 46q-1 6 0 10'/%3E%3Cpath d='M57 53q-1 6 0 10'/%3E%3Cpath d='M37 49q-1 6 0 10'/%3E%3Cpath d='M102 80q-1 6 0 11'/%3E%3Cpath d='M44 24q-1 6 0 10'/%3E%3Cpath d='M166 22q-1 6 0 13'/%3E%3Cpath d='M179 77q-1 6 0 13'/%3E%3C/g%3E%3Cg fill='none' stroke='%233a2c46' stroke-width='8'%3E%3Crect x='8' y='8' width='204' height='150' rx='16'/%3E%3Cpath d='M110 8v150M8 84h204'/%3E%3C/g%3E%3Crect x='0' y='158' width='220' height='12' rx='4' fill='%233a2c46'/%3E%3Cpath d='M170 158c-2-12 2-18 10-18s12 6 10 18z' fill='%235a4766'/%3E%3Cg fill='%235fb8a8'%3E%3Cellipse cx='172' cy='134' rx='5' ry='11' transform='rotate(-25 172 134)'/%3E%3Cellipse cx='186' cy='132' rx='5' ry='12' transform='rotate(20 186 132)'/%3E%3Cellipse cx='179' cy='128' rx='4' ry='12'/%3E%3C/g%3E%3C/svg%3E") no-repeat center / contain;
  filter: drop-shadow(0 0 40px rgb(255 201 138 / 0.22));
  opacity: 0.9;
}
:root[data-tema="lofi"] .ambiente__deco2 {
  display: block;
  top: -20vh;
  left: -20vw;
  width: 70vw;
  height: 70vh;
  background: radial-gradient(closest-side, rgb(255 201 138 / 0.18), transparent);
  animation: amb-respira 8s ease-in-out infinite alternate;
}
:root[data-tema="lofi"] .ambiente__particulas i {
  top: -10vh;
  width: 1.5px;
  height: 22px;
  background: linear-gradient(180deg, rgb(200 215 255 / 0), rgb(200 215 255 / 0.55));
  animation-name: amb-lluvia;
  animation-duration: calc(var(--t) / 10);
}

/* ---------- Grafito: grano, una cinta de película y una fuga de luz ---------- */
:root[data-tema="grafito"] .ambiente {
  background: radial-gradient(55% 45% at 92% 0%, rgb(255 150 90 / 0.12), transparent 65%), radial-gradient(40% 40% at 0% 100%, rgb(var(--brillo-rgb) / 0.08), transparent 70%);
}
:root[data-tema="grafito"] .ambiente__cielo {
  display: none;
}
:root[data-tema="grafito"] .ambiente__deco {
  display: block;
  inset: -40px;
  background-image:
    radial-gradient(rgb(255 255 255 / 0.13) 1px, transparent 1.2px),
    radial-gradient(rgb(255 255 255 / 0.07) 1px, transparent 1.2px);
  background-size: 7px 7px, 11px 11px;
  background-position: 0 0, 3px 5px;
  opacity: 0.6;
  animation: amb-grano 0.5s steps(3) infinite;
}
/* El diafragma de una cámara, que gira muy despacio. */
:root[data-tema="grafito"] .ambiente__deco2 {
  display: block;
  top: -110px;
  right: -110px;
  width: clamp(260px, 30vw, 400px);
  aspect-ratio: 1;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='1.4'%3E%3Ccircle cx='100' cy='100' r='96' stroke-opacity='.16'/%3E%3Ccircle cx='100' cy='100' r='76' stroke-opacity='.22'/%3E%3Cg stroke-opacity='.2'%3E%3Cpath d='M100 26L162 68' transform='rotate(0 100 100)'/%3E%3Cpath d='M100 26L162 68' transform='rotate(60 100 100)'/%3E%3Cpath d='M100 26L162 68' transform='rotate(120 100 100)'/%3E%3Cpath d='M100 26L162 68' transform='rotate(180 100 100)'/%3E%3Cpath d='M100 26L162 68' transform='rotate(240 100 100)'/%3E%3Cpath d='M100 26L162 68' transform='rotate(300 100 100)'/%3E%3C/g%3E%3Cpolygon points='129.4,117.0 100.0,134.0 70.6,117.0 70.6,83.0 100.0,66.0 129.4,83.0' stroke-opacity='.3'/%3E%3C/g%3E%3C/svg%3E") no-repeat center / contain;
  animation: amb-gira 120s linear infinite;
}
/* La cinta corre por el borde izquierdo; la fuga de luz tibia está en el fondo. */
:root[data-tema="grafito"] .ambiente__deco3 {
  display: block;
  top: -44px;
  bottom: 0;
  left: 0;
  width: 46px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 46 44'%3E%3Crect width='46' height='44' fill='%23ffffff' fill-opacity='.05'/%3E%3Crect x='6' y='8' width='10' height='14' rx='3' fill='%23ffffff' fill-opacity='.16'/%3E%3Crect x='30' y='8' width='10' height='14' rx='3' fill='%23ffffff' fill-opacity='.16'/%3E%3C/svg%3E") repeat-y left top / 46px 44px;
  animation: amb-cinta 1.4s linear infinite;
}
:root[data-tema="grafito"] .ambiente__particulas i {
  top: 0;
  width: 1px;
  height: 100vh;
  background: rgb(255 255 255 / 0.1);
  opacity: 0;
  animation-name: amb-raya;
  animation-duration: calc(var(--t) / 3);
  animation-timing-function: steps(1);
}

/* ---------- Glaciar: montañas de hielo, pinos y nieve ---------- */
:root[data-tema="glaciar"] .ambiente__cielo {
  opacity: 0.35;
}
:root[data-tema="glaciar"] .ambiente__deco {
  display: block;
  top: -220px;
  right: 0;
  bottom: 0;
  left: 0;
  background-image:
    radial-gradient(circle, rgb(255 255 255 / 0.8) 0 1.4px, transparent 2px),
    radial-gradient(circle, rgb(200 230 255 / 0.55) 0 1px, transparent 1.6px),
    radial-gradient(circle, rgb(255 255 255 / 0.45) 0 1.8px, transparent 2.4px);
  background-size: 44px 44px, 55px 55px, 110px 110px;
  background-position: 0 0, 18px 26px, 37px 71px;
  animation: amb-nieve 11s linear infinite;
}
:root[data-tema="glaciar"] .ambiente__deco3 {
  display: block;
  right: 0;
  bottom: 8vh;
  left: 0;
  height: 26vh;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 240' preserveAspectRatio='none'%3E%3Cpath d='M0 240V210L73 20L150 202L227 88L300 190L366 45L450 209L518 165L600 193L667 109L750 205L815 126L900 209L969 47L1050 202L1130 31L1200 186V240z' fill='%231d3554'/%3E%3Cpath d='M59 36L73 20L87 36l-7-4-7 5-7-5z' fill='%239fc6ee'/%3E%3Cpath d='M213 104L227 88L241 104l-7-4-7 5-7-5z' fill='%239fc6ee'/%3E%3Cpath d='M352 61L366 45L380 61l-7-4-7 5-7-5z' fill='%239fc6ee'/%3E%3Cpath d='M504 181L518 165L532 181l-7-4-7 5-7-5z' fill='%239fc6ee'/%3E%3Cpath d='M653 125L667 109L681 125l-7-4-7 5-7-5z' fill='%239fc6ee'/%3E%3Cpath d='M801 142L815 126L829 142l-7-4-7 5-7-5z' fill='%239fc6ee'/%3E%3Cpath d='M955 63L969 47L983 63l-7-4-7 5-7-5z' fill='%239fc6ee'/%3E%3Cpath d='M1116 47L1130 31L1144 47l-7-4-7 5-7-5z' fill='%239fc6ee'/%3E%3C/svg%3E") no-repeat bottom / 100% 100%;
  opacity: 0.6;
}
:root[data-tema="glaciar"] .ambiente__deco2 {
  display: block;
  right: 0;
  bottom: 0;
  left: 0;
  height: 26vh;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 240' preserveAspectRatio='none'%3E%3Cpath d='M0 240V215L89 20L171 192L260 74L343 212L426 64L514 203L608 145L686 197L765 49L857 207L940 140L1029 214L1111 190L1200 212V240z' fill='%2313263f'/%3E%3Cpath d='M75 36L89 20L103 36l-7-4-7 5-7-5z' fill='%23ddeeff'/%3E%3Cpath d='M246 90L260 74L274 90l-7-4-7 5-7-5z' fill='%23ddeeff'/%3E%3Cpath d='M412 80L426 64L440 80l-7-4-7 5-7-5z' fill='%23ddeeff'/%3E%3Cpath d='M594 161L608 145L622 161l-7-4-7 5-7-5z' fill='%23ddeeff'/%3E%3Cpath d='M751 65L765 49L779 65l-7-4-7 5-7-5z' fill='%23ddeeff'/%3E%3Cpath d='M926 156L940 140L954 156l-7-4-7 5-7-5z' fill='%23ddeeff'/%3E%3Cpath d='M1097 206L1111 190L1125 206l-7-4-7 5-7-5z' fill='%23ddeeff'/%3E%3Cpath d='M0 189L8 209H4L11 226H6L13 240H-13L-6 226H-11L-4 209H-8zM64 192L71 211H67L74 227H69L75 240H52L58 227H54L60 211H56zM99 142L114 181H107L119 212H109L123 240H74L88 212H78L91 181H83zM121 193L128 212H125L131 227H126L132 240H109L116 227H111L117 212H113zM145 175L156 201H150L159 222H152L161 240H129L138 222H132L140 201H135zM192 160L205 192H199L209 217H201L213 240H172L184 217H176L186 192H180zM229 181L238 205H233L241 224H235L243 240H214L222 224H216L224 205H219zM264 154L278 188H271L282 216H274L286 240H243L255 216H246L257 188H250zM284 196L291 214H287L293 228H289L295 240H273L279 228H275L280 214H277zM334 164L346 194H340L350 219H342L353 240H315L325 219H318L327 194H321zM380 189L388 209H384L390 226H385L392 240H367L374 226H369L376 209H372zM399 178L409 203H404L412 223H406L414 240H383L392 223H386L394 203H389zM445 155L459 189H452L463 216H455L466 240H424L436 216H427L438 189H432zM488 147L503 184H495L508 214H498L511 240H465L478 214H468L481 184H473zM520 181L530 205H525L533 224H527L535 240H506L514 224H508L516 205H511zM536 148L551 185H544L555 214H546L559 240H513L526 214H517L529 185H522zM577 174L588 201H583L591 222H585L594 240H561L570 222H564L572 201H567zM622 143L638 182H630L642 213H633L646 240H598L611 213H602L614 182H606zM660 152L674 187H667L678 215H670L682 240H638L650 215H641L653 187H646zM703 183L712 206H708L715 224H709L717 240H689L697 224H691L698 206H694zM714 149L728 186H721L733 215H724L736 240H691L704 215H695L707 186H699zM759 153L773 188H766L777 216H769L781 240H737L749 216H741L752 188H745zM807 161L820 192H813L824 218H816L827 240H787L798 218H790L801 192H794zM836 142L852 181H844L856 213H847L860 240H811L825 213H815L828 181H820zM863 144L878 183H871L883 213H874L887 240H839L853 213H843L855 183H848zM914 182L923 205H919L926 224H920L929 240H900L908 224H902L909 205H905zM923 172L934 199H928L937 221H930L940 240H905L915 221H908L917 199H912zM961 170L972 198H967L976 220H969L979 240H944L953 220H946L956 198H950zM1002 195L1009 213H1005L1011 227H1007L1013 240H990L997 227H992L998 213H994zM1030 167L1042 196H1036L1045 220H1038L1048 240H1012L1022 220H1015L1024 196H1018zM1064 168L1075 197H1070L1079 220H1072L1082 240H1046L1056 220H1049L1058 197H1052zM1117 148L1132 185H1124L1136 214H1127L1140 240H1094L1107 214H1098L1110 185H1102zM1160 173L1171 200H1166L1174 221H1168L1177 240H1144L1153 221H1146L1155 200H1150zM1179 151L1193 187H1186L1197 215H1188L1201 240H1156L1169 215H1160L1172 187H1164z' fill='%23081525'/%3E%3C/svg%3E") no-repeat bottom / 100% 100%;
}
:root[data-tema="glaciar"] .ambiente__particulas i {
  animation-duration: calc(var(--t) / 4);
}

/* ---------- Matcha: bambú, una taza de té y hojas que flotan ---------- */
:root[data-tema="matcha"] .ambiente__deco {
  display: block;
  top: 4.5rem;
  right: 6vw;
  width: clamp(84px, 9vw, 120px);
  aspect-ratio: 120 / 150;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 150'%3E%3Cg fill='none' stroke='%23f3f7ec' stroke-opacity='.4' stroke-width='3.5' stroke-linecap='round'%3E%3Cpath d='M40 70c-12-12 12-20 0-34S40 10 32 2M64 70c-12-12 12-20 0-34S64 10 56 2M86 70c-10-10 10-18 0-30'/%3E%3C/g%3E%3Cpath d='M10 82h92c0 30-20 48-46 48S10 112 10 82z' fill='%2336422d'/%3E%3Cpath d='M100 90c16 0 18 22 0 24' fill='none' stroke='%2336422d' stroke-width='7'/%3E%3Cpath d='M16 82h80' stroke='%23a7d17e' stroke-width='6' stroke-linecap='round'/%3E%3Cellipse cx='56' cy='136' rx='52' ry='7' fill='%231c2318'/%3E%3C/svg%3E") no-repeat center / contain;
  animation: amb-vapor 4s ease-in-out infinite;
}
:root[data-tema="matcha"] .ambiente__deco2 {
  display: block;
  top: -25vh;
  left: -25vw;
  width: 70vw;
  height: 70vh;
  background: radial-gradient(closest-side, rgb(242 211 138 / 0.15), transparent);
}
:root[data-tema="matcha"] .ambiente__deco3 {
  display: block;
  bottom: 0;
  left: 0;
  height: 48vh;
  aspect-ratio: 150 / 320;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 150 320'%3E%3Crect x='30' y='60' width='14' height='260' rx='6' fill='%232f3d26'/%3E%3Crect x='28' y='100' width='18' height='5' rx='2.5' fill='%2346593a'/%3E%3Crect x='28' y='156' width='18' height='5' rx='2.5' fill='%2346593a'/%3E%3Crect x='28' y='212' width='18' height='5' rx='2.5' fill='%2346593a'/%3E%3Crect x='28' y='268' width='18' height='5' rx='2.5' fill='%2346593a'/%3E%3Crect x='64' y='20' width='14' height='300' rx='6' fill='%232f3d26'/%3E%3Crect x='62' y='60' width='18' height='5' rx='2.5' fill='%2346593a'/%3E%3Crect x='62' y='116' width='18' height='5' rx='2.5' fill='%2346593a'/%3E%3Crect x='62' y='172' width='18' height='5' rx='2.5' fill='%2346593a'/%3E%3Crect x='62' y='228' width='18' height='5' rx='2.5' fill='%2346593a'/%3E%3Crect x='62' y='284' width='18' height='5' rx='2.5' fill='%2346593a'/%3E%3Crect x='96' y='80' width='14' height='240' rx='6' fill='%232f3d26'/%3E%3Crect x='94' y='120' width='18' height='5' rx='2.5' fill='%2346593a'/%3E%3Crect x='94' y='176' width='18' height='5' rx='2.5' fill='%2346593a'/%3E%3Crect x='94' y='232' width='18' height='5' rx='2.5' fill='%2346593a'/%3E%3Crect x='94' y='288' width='18' height='5' rx='2.5' fill='%2346593a'/%3E%3Cg fill='%233e5230'%3E%3Cellipse cx='60' cy='70' rx='26' ry='7' transform='rotate(-30 60 70)'/%3E%3Cellipse cx='118' cy='110' rx='28' ry='7' transform='rotate(25 118 110)'/%3E%3Cellipse cx='20' cy='120' rx='24' ry='6' transform='rotate(-20 20 120)'/%3E%3Cellipse cx='90' cy='160' rx='26' ry='6' transform='rotate(30 90 160)'/%3E%3C/g%3E%3C/svg%3E") no-repeat left bottom / contain;
  opacity: 0.8;
  transform-origin: 50% 100%;
  animation: amb-brisa 10s ease-in-out infinite alternate;
}
:root[data-tema="matcha"] .ambiente__particulas i {
  top: -4vh;
  width: 16px;
  height: 10px;
  border-radius: 0 100% 0 100%;
  background: linear-gradient(135deg, #c5e3a5, #7faf5a);
  opacity: 0.75;
  animation-name: amb-cae;
  animation-duration: calc(var(--t) * 1.6);
}

/* ---------- Arena: dunas, cactus, mesas lejanas y arena que vuela ---------- */
:root[data-tema="arena"] .ambiente {
  background: linear-gradient(180deg, rgb(255 236 200 / 0.6), transparent 50%), radial-gradient(40% 30% at 85% 5%, rgb(255 210 120 / 0.35), transparent 70%);
}
:root[data-tema="arena"] .ambiente__cielo {
  display: none;
}
:root[data-tema="arena"] .ambiente__deco {
  display: block;
  top: 7vh;
  right: 10vw;
  width: clamp(80px, 10vw, 130px);
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle, #ffe7a8 0 45%, rgb(255 210 120 / 0.4) 48%, transparent 70%);
  animation: amb-respira 6s ease-in-out infinite alternate;
}
:root[data-tema="arena"] .ambiente__deco3 {
  display: block;
  right: 0;
  bottom: 12vh;
  left: 0;
  height: 16vh;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 220' preserveAspectRatio='none'%3E%3Cpath d='M0 220V170h120l20-40h140l20 40h180l30-60h160l30 60h200l20-30h120l20 30h140V220z' fill='%23e9d6b2' fill-opacity='.8'/%3E%3C/svg%3E") no-repeat bottom / 100% 100%;
}
:root[data-tema="arena"] .ambiente__deco2 {
  display: block;
  right: 0;
  bottom: 0;
  left: 0;
  height: 22vh;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 220' preserveAspectRatio='none'%3E%3Cpath d='M0 220V120C200 60 380 70 560 120S900 150 1200 90V220z' fill='%23ead7b0'/%3E%3Cpath d='M0 220V160C260 120 460 140 700 170S1000 170 1200 140V220z' fill='%23dcc193'/%3E%3Cg fill='%238f7038'%3E%3Cpath d='M950 152v-54a9 9 0 0 1 18 0v54z'/%3E%3Cpath d='M950 126h-12v-18a6 6 0 0 1 12 0zM968 118h12v-22a6 6 0 0 0-12 0z'/%3E%3Cpath d='M214 172v-40a7 7 0 0 1 14 0v40z'/%3E%3Cpath d='M214 152h-9v-14a4.5 4.5 0 0 1 9 0z'/%3E%3Cpath d='M228 146h9v-12a4.5 4.5 0 0 0-9 0z'/%3E%3C/g%3E%3C/svg%3E") no-repeat bottom / 100% 100%;
  opacity: 0.9;
}
:root[data-tema="arena"] .ambiente__particulas i {
  left: -4vw;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: rgb(176 130 70 / 0.55);
  animation-name: amb-viento;
  animation-duration: calc(var(--t) / 1.6);
}

/* ---------- Menta: hojas de menta, burbujas y olas ---------- */
:root[data-tema="menta"] .ambiente__cielo {
  display: none;
}
:root[data-tema="menta"] .ambiente__deco {
  display: block;
  top: 5rem;
  left: -10px;
  width: clamp(170px, 22vw, 280px);
  aspect-ratio: 220 / 160;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 160'%3E%3Cpath d='M-10 20C50 40 100 60 160 120' fill='none' stroke='%233c8c6b' stroke-width='5' stroke-linecap='round'/%3E%3Cg fill='%2387d6b3'%3E%3Cellipse cx='40' cy='18' rx='22' ry='10' transform='rotate(-15 40 18)'/%3E%3Cellipse cx='60' cy='60' rx='22' ry='10' transform='rotate(40 60 60)'/%3E%3Cellipse cx='110' cy='62' rx='22' ry='10' transform='rotate(-10 110 62)'/%3E%3Cellipse cx='118' cy='108' rx='22' ry='10' transform='rotate(55 118 108)'/%3E%3C/g%3E%3Cg fill='%235fbf98'%3E%3Cellipse cx='88' cy='40' rx='18' ry='8' transform='rotate(25 88 40)'/%3E%3Cellipse cx='150' cy='96' rx='18' ry='8' transform='rotate(-20 150 96)'/%3E%3C/g%3E%3C/svg%3E") no-repeat left top / contain;
  opacity: 0.75;
  transform-origin: 0 0;
  animation: amb-vaiven 8s ease-in-out infinite alternate;
}
:root[data-tema="menta"] .ambiente__deco3,
:root[data-tema="menta"] .ambiente__deco2 {
  display: block;
  bottom: 0;
  left: 0;
  width: 200%;
}
:root[data-tema="menta"] .ambiente__deco3 {
  height: 18vh;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 100' preserveAspectRatio='none'%3E%3Cpath d='M0 40C100 10 200 70 300 40S500 10 600 40V100H0z' fill='%235fbf98' fill-opacity='0.22'/%3E%3C/svg%3E") repeat-x left bottom / 50% 100%;
  animation: amb-olas 20s linear infinite reverse;
}
:root[data-tema="menta"] .ambiente__deco2 {
  height: 13vh;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 100' preserveAspectRatio='none'%3E%3Cpath d='M0 40C100 10 200 70 300 40S500 10 600 40V100H0z' fill='%2387d6b3' fill-opacity='0.35'/%3E%3C/svg%3E") repeat-x left bottom / 50% 100%;
  animation: amb-olas 14s linear infinite;
}
:root[data-tema="menta"] .ambiente__particulas i {
  top: 104vh;
  width: 10px;
  height: 10px;
  border: 1.5px solid rgb(8 122 85 / 0.35);
  border-radius: 50%;
  animation-name: amb-burbuja;
  animation-duration: calc(var(--t) * 1.1);
}
:root[data-tema="menta"] .ambiente__particulas i:nth-child(odd) {
  width: 6px;
  height: 6px;
}
:root[data-tema="menta"] .ambiente__particulas i:nth-child(3n) {
  width: 14px;
  height: 14px;
}

/* ---------- Tinta: manchas, un trazo de pincel y gotas ---------- */
:root[data-tema="tinta"] .ambiente__cielo {
  display: none;
}
:root[data-tema="tinta"] .ambiente__deco,
:root[data-tema="tinta"] .ambiente__deco2 {
  display: block;
  width: 34vmax;
  aspect-ratio: 1;
  animation: amb-gira 140s linear infinite;
}
:root[data-tema="tinta"] .ambiente__deco {
  top: -12vmax;
  right: -12vmax;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cg fill='%23111111'%3E%3Cpath d='M170 100Q168 124 181 139Q165 142 158 173Q150 170 118 177Q86 180 80 188Q81 177 55 157Q35 149 31 133Q23 110 18 100Q10 82 26 64Q37 56 44 29Q55 9 78 5Q104 14 120 14Q123 36 147 42Q171 64 168 67Q161 96 170 100z'/%3E%3Ccircle cx='118' cy='15' r='5'/%3E%3Ccircle cx='45' cy='177' r='4'/%3E%3Ccircle cx='153' cy='174' r='5'/%3E%3Ccircle cx='147' cy='19' r='6'/%3E%3Ccircle cx='107' cy='180' r='6'/%3E%3Ccircle cx='113' cy='29' r='6'/%3E%3C/g%3E%3C/svg%3E") no-repeat center / contain;
  opacity: 0.07;
}
:root[data-tema="tinta"] .ambiente__deco2 {
  bottom: -14vmax;
  left: -14vmax;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cg fill='%23cc3300'%3E%3Cpath d='M170 100Q168 124 168 133Q150 140 159 174Q136 176 116 172Q105 172 79 191Q53 181 38 177Q35 164 25 136Q36 129 27 100Q38 78 34 68Q32 63 49 36Q61 25 81 19Q104 29 120 12Q142 32 153 34Q175 43 171 66Q162 93 170 100z'/%3E%3Ccircle cx='101' cy='27' r='7'/%3E%3Ccircle cx='130' cy='19' r='9'/%3E%3Ccircle cx='164' cy='173' r='6'/%3E%3Ccircle cx='57' cy='178' r='3'/%3E%3Ccircle cx='49' cy='13' r='6'/%3E%3Ccircle cx='123' cy='28' r='6'/%3E%3C/g%3E%3C/svg%3E") no-repeat center / contain;
  opacity: 0.08;
  animation-direction: reverse;
}
:root[data-tema="tinta"] .ambiente__deco3 {
  display: block;
  right: 0;
  bottom: 6vh;
  left: 0;
  height: 12vh;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath d='M30 84C230 30 420 120 640 66S1000 34 1170 72C1010 62 660 96 430 106S170 64 30 84z' fill='%23111' fill-opacity='.08'/%3E%3Cg fill='%23111' fill-opacity='.08'%3E%3Ccircle cx='1186' cy='58' r='4'/%3E%3Ccircle cx='1150' cy='96' r='3'/%3E%3Ccircle cx='20' cy='70' r='3'/%3E%3C/g%3E%3C/svg%3E") no-repeat center / 100% 100%;
}
:root[data-tema="tinta"] .ambiente__particulas i {
  top: -4vh;
  width: 5px;
  height: 7px;
  border-radius: 50% 50% 50% 50% / 60% 60% 40% 40%;
  background: rgb(17 17 17 / 0.22);
  animation-name: amb-gota;
  animation-duration: calc(var(--t) * 1.4);
}
:root[data-tema="tinta"] .ambiente__particulas i:nth-child(n+7) {
  display: none;
}

@keyframes amb-nube {
  from { transform: translate3d(-3%, -2%, 0) scale(1); }
  to { transform: translate3d(4%, 3%, 0) scale(1.08); }
}
@keyframes amb-nube-pasa {
  from { transform: translateX(-30%); opacity: 0.4; }
  to { transform: translateX(40%); opacity: 1; }
}
@keyframes amb-fugaz {
  0%, 82% { opacity: 0; translate: 0 0; }
  84% { opacity: 1; }
  100% { opacity: 0; translate: -70vw 38vw; }
}
@keyframes amb-aurora {
  from { transform: translateX(-6vw) skewX(-8deg); opacity: 0.7; }
  to { transform: translateX(6vw) skewX(8deg); opacity: 1; }
}
@keyframes amb-corona {
  0%, 100% { opacity: 0; }
  50% { opacity: 1; }
}
@keyframes amb-gira {
  to { transform: rotate(1turn); }
}
@keyframes amb-sube {
  from { transform: translate3d(0, 0, 0); opacity: 0; }
  10% { opacity: 1; }
  to { transform: translate3d(-4vw, -112vh, 0); opacity: 0; }
}
@keyframes amb-onda {
  from { transform: scale(0.2); opacity: 0.9; }
  to { transform: scale(1); opacity: 0; }
}
@keyframes amb-ecualizador {
  from { transform: scaleY(0.2); }
  to { transform: scaleY(1); }
}
@keyframes amb-luciernaga {
  0%, 100% { transform: translate3d(0, 0, 0); opacity: 0.2; }
  25% { transform: translate3d(3vw, -2vh, 0); opacity: 1; }
  50% { transform: translate3d(-2vw, -5vh, 0); opacity: 0.4; }
  75% { transform: translate3d(1vw, 2vh, 0); opacity: 0.9; }
}
@keyframes amb-flota {
  from { transform: translate3d(0, 0, 0) scale(1); }
  to { transform: translate3d(3vw, -4vh, 0) scale(1.3); }
}
@keyframes amb-flota-suave {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(1.5vw, -2vh, 0); }
}
@keyframes amb-viento {
  from { transform: translate3d(0, 0, 0); opacity: 0; }
  15% { opacity: 1; }
  to { transform: translate3d(110vw, -6vh, 0); opacity: 0; }
}
@keyframes amb-burbuja {
  0% { transform: translate3d(0, 0, 0); opacity: 0; }
  10% { opacity: 1; }
  50% { transform: translate3d(1.5vw, -55vh, 0); }
  100% { transform: translate3d(-1vw, -112vh, 0); opacity: 0; }
}
@keyframes amb-olas {
  to { transform: translateX(-50%); }
}
@keyframes amb-titila {
  from { opacity: 0.4; }
  to { opacity: 0.7; }
}
@keyframes amb-destello {
  0%, 100% { opacity: 0.15; transform: scale(0.6); }
  50% { opacity: 1; transform: scale(1); }
}
@keyframes amb-cae {
  from { transform: translate3d(0, 0, 0) rotate(0deg); }
  to { transform: translate3d(8vw, 112vh, 0) rotate(330deg); }
}
@keyframes amb-nieve-marina {
  0% { transform: translate3d(0, 0, 0); opacity: 0; }
  10% { opacity: 1; }
  100% { transform: translate3d(3vw, 108vh, 0); opacity: 0.2; }
}
@keyframes amb-gota {
  0% { transform: translate3d(0, 0, 0) scale(1); opacity: 0; }
  10% { opacity: 1; }
  100% { transform: translate3d(0, 110vh, 0) scale(1.2); opacity: 0.4; }
}
@keyframes amb-lluvia {
  from { transform: translate3d(0, 0, 0) rotate(12deg); }
  to { transform: translate3d(-24vh, 118vh, 0) rotate(12deg); }
}
@keyframes amb-rejilla {
  from { transform: translateY(0); }
  to { transform: translateY(40px); }
}
@keyframes amb-grano {
  0% { transform: translate(0, 0); }
  33% { transform: translate(-3px, 2px); }
  66% { transform: translate(2px, -3px); }
  100% { transform: translate(0, 0); }
}
@keyframes amb-cinta {
  to { transform: translateY(44px); }
}
@keyframes amb-raya {
  0%, 92% { opacity: 0; }
  93% { opacity: 1; }
  96%, 100% { opacity: 0; }
}
@keyframes amb-nieve {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(0, 220px, 0); }
}
@keyframes amb-vapor {
  0%, 100% { transform: translateY(0); opacity: 0.75; }
  50% { transform: translateY(-6px); opacity: 1; }
}
@keyframes amb-respira {
  from { opacity: 0.65; }
  to { opacity: 1; }
}
@keyframes amb-vaiven {
  from { transform: rotate(-1.2deg); }
  to { transform: rotate(1.2deg); }
}
@keyframes amb-brisa {
  from { transform: skewX(-1.5deg); }
  to { transform: skewX(1.5deg); }
}
@keyframes amb-medusa {
  0%, 100% { transform: translate3d(0, 0, 0) scale(1, 1); }
  20% { transform: translate3d(0, -10px, 0) scale(1.05, 0.92); }
  45% { transform: translate3d(0.6vw, -34px, 0) scale(1, 1); }
  70% { transform: translate3d(0.2vw, -18px, 0) scale(1.04, 0.95); }
}

/* En el celular, las escenas se achican para no tapar nada. */
@media (max-width: 720px) {
  :root[data-tema="selva"] .ambiente__deco3 { height: 30vh; }
  :root[data-tema="sintonia"] .ambiente__deco3 { height: 26vh; }
  :root[data-tema="sintonia"] .ambiente__deco { bottom: calc(24.5vh - 30vmax); left: calc(4vw + 6vh - 30vmax); }
  :root[data-tema="matcha"] .ambiente__deco3 { height: 34vh; }
  :root[data-tema="lofi"] .ambiente__deco { top: 4.5rem; }
  :root[data-tema="grafito"] .ambiente__deco3 { width: 30px; background-size: 30px 29px; }
}

@media (prefers-reduced-motion: reduce) {
  .ambiente *,
  .ambiente *::before,
  .ambiente *::after {
    animation: none !important;
  }
  /* Quietas, las partículas que caen o suben se quedarían en un borde: se esconden. */
  :root[data-tema="sakura"] .ambiente__particulas,
  :root[data-tema="lofi"] .ambiente__particulas,
  :root[data-tema="matcha"] .ambiente__particulas,
  :root[data-tema="abismo"] .ambiente__particulas,
  :root[data-tema="tinta"] .ambiente__particulas,
  :root[data-tema="grafito"] .ambiente__particulas {
    display: none;
  }
}
