/* ============================================================
   MONOPOLY DE CASA — estilos compartidos (TV y móvil)
   ============================================================ */
:root {
  --feltror: #0a4f32;        /* verde tapete de casino elegante */
  --feltror-dark: #063421;
  --oro: #f59e0b;
  --oro-brillante: #fbbf24;
  --oro-oscuro: #b45309;
  --crema: #fdfbf7;
  --crema-borde: #d1c7b7;
  --tinta: #0f172a;
  --rojo: #dc2626;
  --rojo-oscuro: #991b1b;
  --verde: #16a34a;
  --azul: #2563eb;
  --gris: #475569;
  --sombra: 0 12px 35px rgba(0, 0, 0, .45);
  --radio: 16px;
}

* {
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
}

html, body {
  margin: 0;
  padding: 0;
  height: 100%;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  background: radial-gradient(circle at 50% 20%, #0d6842 0%, var(--feltror) 60%, var(--feltror-dark) 100%);
  color: var(--tinta);
  overscroll-behavior: none;
  overflow-x: hidden;
}

.logo-monopoly {
  font-family: "Arial Black", Impact, Georgia, serif;
  font-weight: 900;
  letter-spacing: 1.5px;
  color: #ffffff;
  background: linear-gradient(180deg, #ef4444 0%, #b91c1c 100%);
  border: 3.5px solid #ffffff;
  border-radius: 12px;
  padding: 4px 20px;
  box-shadow: 0 6px 16px rgba(0, 0, 0, .4), inset 0 2px 4px rgba(255,255,255,.4);
  display: inline-block;
  text-transform: uppercase;
  text-shadow: 0 2px 4px rgba(0,0,0,.5);
}

button {
  font: inherit;
  cursor: pointer;
  border: none;
  border-radius: 14px;
  padding: 14px 22px;
  font-weight: 900;
  transition: transform .09s ease, filter .15s ease, box-shadow .15s ease;
  user-select: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
button:active {
  transform: translateY(3px) scale(.98);
}
button:disabled {
  opacity: .45;
  cursor: not-allowed;
  filter: grayscale(.6);
  transform: none !important;
}

.btn-oro {
  background: linear-gradient(180deg, #fde047 0%, #f59e0b 60%, #d97706 100%);
  color: #451a03;
  box-shadow: 0 5px 0 #92400e, 0 8px 18px rgba(0,0,0,.35);
  text-shadow: 0 1px 1px rgba(255,255,255,.6);
}
.btn-oro:hover:not(:disabled) {
  filter: brightness(1.06);
}

.btn-verde {
  background: linear-gradient(180deg, #4ade80 0%, #16a34a 60%, #15803d 100%);
  color: #ffffff;
  box-shadow: 0 5px 0 #14532d, 0 8px 18px rgba(0,0,0,.35);
  text-shadow: 0 2px 3px rgba(0,0,0,.4);
}
.btn-verde:hover:not(:disabled) {
  filter: brightness(1.08);
}

.btn-rojo {
  background: linear-gradient(180deg, #f87171 0%, #dc2626 60%, #b91c1c 100%);
  color: #ffffff;
  box-shadow: 0 5px 0 #7f1d1d, 0 8px 18px rgba(0,0,0,.35);
  text-shadow: 0 2px 3px rgba(0,0,0,.4);
}
.btn-rojo:hover:not(:disabled) {
  filter: brightness(1.08);
}

.btn-azul {
  background: linear-gradient(180deg, #60a5fa 0%, #2563eb 60%, #1d4ed8 100%);
  color: #ffffff;
  box-shadow: 0 5px 0 #1e3a8a, 0 8px 18px rgba(0,0,0,.35);
  text-shadow: 0 2px 3px rgba(0,0,0,.4);
}
.btn-azul:hover:not(:disabled) {
  filter: brightness(1.08);
}

.btn-fantasma {
  background: rgba(255, 255, 255, .15);
  color: #ffffff;
  border: 1.5px solid rgba(255, 255, 255, .4);
  backdrop-filter: blur(4px);
}
.btn-fantasma:hover {
  background: rgba(255, 255, 255, .25);
}

.btn-gris {
  background: #e2e8f0;
  color: #0f172a;
  box-shadow: 0 4px 0 #94a3b8;
}

.oculto { display: none !important; }

/* Tarjetas */
.tarjeta {
  background: var(--crema);
  border-radius: var(--radio);
  box-shadow: var(--sombra);
  border: 2px solid var(--crema-borde);
}

/* Bandas oficiales de color de las calles de Madrid */
.banda { height: 100%; }
.grupo-marron     { background: #8B4513 !important; } /* Lavapiés, Ronda de Valencia */
.grupo-lightblue  { background: #38bdf8 !important; } /* Cuatro Caminos, Reina Victoria, Bravo Murillo */
.grupo-pink       { background: #ec4899 !important; } /* Bilbao, Alberto Aguilera, Fuencarral */
.grupo-orange     { background: #f97316 !important; } /* Felipe II, Velázquez, Serrano */
.grupo-red        { background: #ef4444 !important; } /* América, María de Molina, Cea Bermúdez */
.grupo-yellow     { background: #eab308 !important; } /* Reyes Católicos, Bailén, España */
.grupo-green      { background: #22c55e !important; } /* Puerta del Sol, Alcalá, Gran Vía */
.grupo-darkblue   { background: #2563eb !important; } /* Castellana, Paseo del Prado */

@keyframes pulso {
  0%, 100% {
    box-shadow: 0 0 0 0 rgba(245, 158, 11, .85);
    transform: scale(1);
  }
  50% {
    box-shadow: 0 0 0 14px rgba(245, 158, 11, 0);
    transform: scale(1.02);
  }
}
.pulso { animation: pulso 1.5s infinite; }

@keyframes flotar {
  from { opacity: 1; transform: translateY(0) scale(1); }
  to { opacity: 0; transform: translateY(-50px) scale(1.15); }
}
.dinero-flotante {
  position: absolute;
  font-weight: 900;
  font-size: 24px;
  color: #4ade80;
  text-shadow: 0 3px 8px rgba(0, 0, 0, .8);
  pointer-events: none;
  animation: flotar 1.5s cubic-bezier(.22, 1, .36, 1) forwards;
  z-index: 80;
}
.dinero-flotante.negativo { color: #f87171; }
