.container-fluid { perspective: 1000px; } .container-fluid * { transform-style: preserve-3d; } #screenRow { display: block; transform: translateZ(var(--tZ)) rotateX(var(--rX)) rotateY(var(--rY)); } #screenRow * { display: block; } #screenRow .col { display: inline-block !important; width: max-content; height: 100%; vertical-align: top; } .card { background-color: #363941; } #screenRow .card > * { transform: translateZ(var(--cell-side)); } #screenRow .card-header { background-color: transparent; border: none; } .minoes-table th, .minoes-table td { display: inline-block !important; width: max-content; } .minoes-table tr { width: max-content; height: var(--cell-side); } #statsTable tr { display: table; width: 100%; } #statsTable th, #statsTable td { display: table-cell; border: 0; } tr.matrix td:not(.mino) { border: 0; will-change: transform; transform: translateZ(0); } .minoes-table td { width: var(--cell-side) !important; height: var(--cell-side); } .minoes-table .mino { background: var(--background-color); overflow: visible; } .mino::before, .mino::after { content: ""; position: absolute; display: block; top: 0; left: 0; width: inherit; height: inherit; } .mino::before { background: var(--light-color); transform: translateZ(calc(-1 * var(--cell-side))) rotateY(-90deg); transform-origin: left; } .right .mino::before { background: var(--dark-color); transform: translateZ(calc(-1 * var(--cell-side))) rotateY(90deg); transform-origin: right; } .mino::after { background: var(--light-color); transform: translateZ(calc(-1 * var(--cell-side))) rotateX(90deg); transform-origin: top; } .bottom .mino::after { background: var(--dark-color); transform: translateZ(calc(-1 * var(--cell-side))) rotateX(-90deg); transform-origin: bottom; } .I.mino { --background-color: #42AFE1B0; --light-color: #6CEAFF80; --dark-color: #00a4b0B0; } .J.mino { --background-color: #1165B5B0; --light-color: #339BFF80; --dark-color: #00009dB0; } .L.mino { --background-color: #F38927B0; --light-color: #FFBA5980; --dark-color: #c54800B0; } .O.mino { --background-color: #F6D03CB0; --light-color: #FFFF7F80; --dark-color: #ca9501B0; } .S.mino { --background-color: #51B84DB0; --light-color: #84F88080; --dark-color: #1cbc02B0; } .T.mino { --background-color: #9739A2B0; --light-color: #D958E980; --dark-color: #6e019aB0; } .Z.mino { --background-color: #EB4F65B0; --light-color: #FF7F7980; --dark-color: #ad1936B0; } .ghost.mino { --background-color: #8886; --light-color: #CCC6; --dark-color: #3336; } .locking.mino { --background-color: #EEEB; --light-color: #FFFB; --dark-color: #DDDB; } .disabled.mino { --background-color: #EEE8; --light-color: #FFF8; } @keyframes cleared-line-animation { from { opacity: 1; background-color: #ceffff66; box-shadow: -200px 0 5px white, 200px 0 5px white; } to { opacity: 1; background-color: transparent; } } @keyframes show-level-animation { from { opacity: 1; transform: translateY(200%); } 50% { transform: translateY(0) scaleY(1); line-height: var(--bs-body-line-height); } to { opacity: 1; transform: translateY(-100%) scaleY(0); line-height: 0; } } @keyframes zoom-in-animation { from { opacity: 1; transform: scale3d(0.3, 0.3, 0.3); line-height: var(--bs-body-line-height); } 30% { transform: scale3d(1, 1, 1); } 80% { transform: scale3d(1, 1, 1); line-height: var(--bs-body-line-height); } to { opacity: 1; transform: scale3d(1.5, 0, 1); line-height: 0; } } @keyframes rotate-in-animation { 0% { opacity: 1; transform:rotate(200deg); line-height: var(--bs-body-line-height); } 30% { transform:translateZ(0); transform: scale3d(1, 1, 1); } 80% { transform: scale3d(1, 1, 1); line-height: var(--bs-body-line-height); } to { opacity: 1; transform: scale3d(1.5, 0, 1); line-height: 0; } } @keyframes game-over-animation { from { opacity: 1; transform: translateY(200%); } to { opacity: 1; transform: translateY(0) scaleY(1); line-height: var(--bs-body-line-height); } }