/* ================================================
  SO DO THI DAU
================================================= */
.sodo-round{
  position: relative;
}
.sodo-round + .sodo-round:before{
  content: "";
  border-right: 1px dotted #666;
  position: absolute;
  z-index: 1;
  left: -50px;
  top: 0;
  width: 1px;
  height: 100%;
}
.sodo-round .sd-name div{
  text-align: center;
  background-color: #FCC600;
}
.sodo-match{
  position: relative;
  background-color: #ccc;
  border-radius: 2px;
  font-size: 11px;
  border-top: 1px solid #666;
  border-bottom: 1px solid #666;
  border-left: 1px solid #666;
}
.sodo-match .match-code{
  color: #f15a28;
  font-size: 14px;
  width: 50px;
  text-align: center;
}
.sodo-match .match-result .player-point{
  border-left: 1px solid #666;
  border-right: 1px solid #666;
}
.sodo-match .match-result > .player-point:first-child{
  border-bottom: 1px solid #666;
}
.sodo-match .match-result .player-point + .player-point{
  border-top: 1px solid #666;
}
.sodo-match .player-point .match-old-code{
  border-right: 1px solid #666;
}
.sodo-match .player-point .match-old-code .moc-w{
  width: 40px;
  text-align: center;
}
.sodo-match .player-point .player{
  padding-left: 10px;
  padding-right: 10px;
}
.sodo-match .player-point .player .pl-w{
  width: 180px;
}
.sodo-match .player-point .point{
  border-left: 1px solid #666;
}
.sodo-match .player-point .point .po-w{
  width: 30px;
  text-align: center;
}
.match-wrapper > .match-item{
  position: relative;
  height: 68px;
  padding-top: 5px;
  padding-bottom: 5px;
}
.sodo-round-space .rs-w{
  width: 100px;
}
.sodo-round-space .rs-w .srs-item{
  background-color: #eee;
  height: 68px;
  /*border: 1px solid blue;*/
  position: relative;
  width: 60px;
}
.match-wrapper > .match-item.match-item-space{
  opacity: 0;
}
.sodo-round .match-wrapper.match-noline > .match-item:after,
.sodo-round .match-wrapper.match-noline > .match-item > .sodo-match:before,
.sodo-round .match-wrapper.match-noline > .match-item > .sodo-match:after{
  display: none;
}
.sodo-round .match-wrapper>.match-item.no-line>.sodo-match::before,
.sodo-round .match-wrapper>.match-item.no-line>.sodo-match::after,
.sodo-round .match-wrapper>.match-item.no-line::after {
	display: none;
}
.match-item.match-item-tb .match-code,
.color-tb {
	color: #c800de;
}
.match-item.match-item-tb.match-item-tb-color-1 .match-code,
.color-tb-1 {
	color: #00d5be;
}

/**********************
  first-child = 68 * (2 ^ round / 2) - 34
  current = first-child * 2

  or

  first-child = current_old + 34
  current = current_old * 2 + 68
***********************/
.round-0 .match-wrapper > .match-item{
  margin-top: 0;
}
.round-0 .match-wrapper > .match-item:first-child{
  margin-top: 0;
}
.round-1 .match-wrapper > .match-item{
  margin-top: 68px;
}
.round-1 .match-wrapper > .match-item:first-child{
  margin-top: 34px;
}
.round-2 .match-wrapper > .match-item{
  margin-top: 204px;
}
.round-2 .match-wrapper > .match-item:first-child{
  margin-top: 102px;
}
.round-3 .match-wrapper > .match-item{
  margin-top: 476px;
}
.round-3 .match-wrapper > .match-item:first-child{
  margin-top: 238px;
}
.round-4 .match-wrapper > .match-item{
  margin-top: 1020px;
}
.round-4 .match-wrapper > .match-item:first-child{
  margin-top: 510px;
}
.round-5 .match-wrapper > .match-item{
  margin-top: 2108px;
}
.round-5 .match-wrapper > .match-item:first-child{
  margin-top: 1054px;
}
.round-6 .match-wrapper > .match-item{
  margin-top: 4284px;
}
.round-6 .match-wrapper > .match-item:first-child{
  margin-top: 2142px;
}
.round-7 .match-wrapper > .match-item{
  margin-top: 8636px;
}
.round-7 .match-wrapper > .match-item:first-child{
  margin-top: 4318px;
}
.round-8 .match-wrapper > .match-item{
  margin-top: 17340px;
}
.round-8 .match-wrapper > .match-item:first-child{
  margin-top: 8670px;
}

/**********************
  sodo-round => default cho round-0
***********************/
.sodo-round{
  margin-right: 100px;
}
.sodo-round .match-wrapper > .match-item:after{
  content: "";
  position: absolute;
  z-index: 1;
  width: 52px;
  height: 2px;
  background-color: #666;
  left: 100%;
  top: 33px;
}
.sodo-round .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:before,
.sodo-round .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:after,
.sodo-round .match-wrapper > .match-item:nth-child(2n) > .sodo-match:before,
.sodo-round .match-wrapper > .match-item:nth-child(2n) > .sodo-match:after{
  content: "";
  position: absolute;
  z-index: 1;
  left: -webkit-calc(100% + 50px);
  left: calc(100% + 50px);
  background-color: #666;
}
.sodo-round .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:before{
  width: 2px;
  top: 29px;
  height: 20px;
}
.sodo-round .match-wrapper > .match-item:nth-child(2n) > .sodo-match:before{
  width: 2px;
  bottom: 29px;
  height: 20px;
}
.sodo-round .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:after{
  width: 50px;
  height: 2px;
  top: 47px;
  background-color: #666;
}
.sodo-round .match-wrapper > .match-item:nth-child(2n) > .sodo-match:after{
  width: 50px;
  height: 2px;
  bottom: 47px;
  background-color: #666;
}
.sodo-wrapper{
  overflow-x: auto;
}
.sodo-wrapper > .sodo-round:last-child .match-wrapper > .match-item:after,
.sodo-wrapper > .sodo-round:last-child .match-wrapper > .match-item > .sodo-match:before,
.sodo-wrapper > .sodo-round:last-child .match-wrapper > .match-item > .sodo-match:after{
  display: none;
}
/**********************
  round-0 => default 
    position = 17 * (2 ^ (round + 1) - 1)
    height = position + 1
    top = position + 30
    bottom = position + 30
***********************/
.round-0 .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:before,
.round-0 .match-wrapper > .match-item:nth-child(2n) > .sodo-match:before{
  height: 18px;
}
.round-0 .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:after{
  top: 47px;
}
.round-0 .match-wrapper > .match-item:nth-child(2n) > .sodo-match:after{
  bottom: 47px;
}
/**********************
  round-1
    position = 17 * (2 ^ (round + 1) - 1)
    height = position + 1
    top = position + 30
    bottom = position + 30
***********************/
.round-1 .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:before,
.round-1 .match-wrapper > .match-item:nth-child(2n) > .sodo-match:before{
  height: 52px;
}
.round-1 .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:after{
  top: 81px;
}
.round-1 .match-wrapper > .match-item:nth-child(2n) > .sodo-match:after{
  bottom: 81px;
}
/**********************
  round-2
    position = 17 * (2 ^ (round + 1) - 1)
    height = position + 1
    top = position + 30
    bottom = position + 30
***********************/
.round-2 .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:before,
.round-2 .match-wrapper > .match-item:nth-child(2n) > .sodo-match:before{
  height: 120px;
}
.round-2 .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:after{
  top: 149px;
}
.round-2 .match-wrapper > .match-item:nth-child(2n) > .sodo-match:after{
  bottom: 149px;
}
/**********************
  round-3
    position = 17 * (2 ^ (round + 1) - 1)
    height = position + 1
    top = position + 30
    bottom = position + 30
***********************/
.round-3 .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:before,
.round-3 .match-wrapper > .match-item:nth-child(2n) > .sodo-match:before{
  height: 256px;
}
.round-3 .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:after{
  top: 285px;
}
.round-3 .match-wrapper > .match-item:nth-child(2n) > .sodo-match:after{
  bottom: 285px;
}
/**********************
  round-4
    position = 17 * (2 ^ (round + 1) - 1)
    height = position + 1
    top = position + 30
    bottom = position + 30
***********************/
.round-4 .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:before,
.round-4 .match-wrapper > .match-item:nth-child(2n) > .sodo-match:before{
  height: 528px;
}
.round-4 .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:after{
  top: 557px;
}
.round-4 .match-wrapper > .match-item:nth-child(2n) > .sodo-match:after{
  bottom: 557px;
}
/**********************
  round-5
    position = 17 * (2 ^ (round + 1) - 1)
    height = position + 1
    top = position + 30
    bottom = position + 30
***********************/
.round-5 .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:before,
.round-5 .match-wrapper > .match-item:nth-child(2n) > .sodo-match:before{
  height: 1072px;
}
.round-5 .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:after{
  top: 1101px;
}
.round-5 .match-wrapper > .match-item:nth-child(2n) > .sodo-match:after{
  bottom: 1101px;
}
/**********************
  round-6
    position = 17 * (2 ^ (round + 1) - 1)
    height = position + 1
    top = position + 30
    bottom = position + 30
***********************/
.round-6 .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:before,
.round-6 .match-wrapper > .match-item:nth-child(2n) > .sodo-match:before{
  height: 2160px;
}
.round-6 .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:after{
  top: 2189px;
}
.round-6 .match-wrapper > .match-item:nth-child(2n) > .sodo-match:after{
  bottom: 2189px;
}
/**********************
  round-7
    position = 17 * (2 ^ (round + 1) - 1)
    height = position + 1
    top = position + 30
    bottom = position + 30
***********************/
.round-7 .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:before,
.round-7 .match-wrapper > .match-item:nth-child(2n) > .sodo-match:before{
  height: 4336px;
}
.round-7 .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:after{
  top: 4365px;
}
.round-7 .match-wrapper > .match-item:nth-child(2n) > .sodo-match:after{
  bottom: 4365px;
}
/**********************
  round-8
    position = 17 * (2 ^ (round + 1) - 1)
    height = position + 1
    top = position + 30
    bottom = position + 30
***********************/
.round-8 .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:before,
.round-8 .match-wrapper > .match-item:nth-child(2n) > .sodo-match:before{
  height: 8688px;
}
.round-8 .match-wrapper > .match-item:nth-child(2n+1) > .sodo-match:after{
  top: 8717px;
}
.round-8 .match-wrapper > .match-item:nth-child(2n) > .sodo-match:after{
  bottom: 8717px;
}