/* Efectos especiales: la situación arriba y las bandas sonoras (2 emojis) en tarjetas.
   Sin box-shadow; solo se animan transform y opacity. */
.efectos { background: #FFF1D6; }
.ef-centro { flex: 1; min-width: 0; display: flex; flex-direction: column; align-items: center; gap: .9rem; }
.ef-situacion { display: flex; align-items: center; gap: 1rem; background: #fff; border-radius: 1.4rem; padding: .7rem 1.6rem; border: .15rem solid #F2C46D; max-width: 100%; box-sizing: border-box; }
.ef-situacion__e { font-size: 3.6rem; line-height: 1; }
.ef-situacion__t { font-size: 2.4rem; font-weight: var(--tg-w-strong); letter-spacing: -.02em; line-height: 1.1; }
.ef-cartel { font-size: 1.5rem; font-weight: var(--tg-w-medium); text-align: center; line-height: 1.25; min-height: 2rem; }
.ef-cartel small { font-size: 1.2rem; color: var(--tg-muted); }
.ef-cartel__sonido { font-size: 2rem; font-weight: var(--tg-w-strong); }

.ef-mesa { flex: 1; min-height: 0; width: 100%; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; align-content: center; }
.ef-mesa--1 { grid-template-columns: minmax(0, 20rem); justify-content: center; }
.ef-mesa--2, .ef-mesa--4 { grid-template-columns: repeat(2, minmax(0, 18rem)); justify-content: center; }
.ef-mesa--7, .ef-mesa--8 { grid-template-columns: repeat(4, 1fr); }

.ef-combo { position: relative; background: #fff; border-radius: 1.2rem; border: .2rem solid #F2DDB0; padding: .6rem .8rem; display: flex; flex-direction: column; align-items: center; gap: .3rem; opacity: .75; transition: opacity .25s, transform .25s; }
.ef-combo--activo { opacity: 1; border-color: #E8890C; transform: scale(1.06); }
.ef-combo--gana { opacity: 1; border-color: var(--tg-online); background: #E3F8EA; }
.ef-combo__n { position: absolute; left: .6rem; top: .3rem; font-size: 1.2rem; font-weight: var(--tg-w-strong); color: #B5670A; }
.ef-combo__sonidos { display: flex; align-items: center; gap: .3rem; }
.ef-sonido { font-size: 3.4rem; line-height: 1.15; display: inline-block; opacity: .55; transform: scale(.85); transition: opacity .2s, transform .2s; }
.ef-mesa--1 .ef-sonido, .ef-mesa--2 .ef-sonido, .ef-mesa--3 .ef-sonido, .ef-mesa--4 .ef-sonido { font-size: 4.2rem; }
.ef-combo--activo .ef-sonido, .ef-combo--gana .ef-sonido { opacity: 1; transform: scale(1); }
.ef-sonido--luz { animation: ef-luz .45s var(--tg-ease) both; }
@keyframes ef-luz { 0% { transform: scale(1); } 50% { transform: scale(1.35) rotate(-6deg); } 100% { transform: scale(1.2); } }
.ef-mas { font-size: 1.6rem; font-weight: var(--tg-w-strong); color: #B5670A; }
.ef-combo__autor { display: flex; align-items: center; gap: .4rem; font-size: 1rem; font-weight: var(--tg-w-medium); max-width: 100%; min-width: 0; }
.ef-combo__autor span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ef-combo__votos { font-size: 1.4rem; font-weight: var(--tg-w-strong); }
.efectos .cl-jugadores { align-self: center; }
