html, body {
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    /*background: url("../images/galaxy.jpg") fixed;*/
}
video#bgvid {
    position: fixed;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: -100;
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    background: url("../video/Figuring-It-Out.jpg") no-repeat;
    background-size: cover;
    overflow:hidden;
}

.togglebutton label .toggle {
    text-align: left;
}

#outer-container {
    display: table;
    position: absolute;
    height: 100%;
    width: 100%;
}

#middle-container {
    display: table-cell;
    vertical-align: middle;
}

#inner-container {
    margin-left: auto;
    margin-right: auto;
    background-color: white;
    padding: 10px 0;
    width: 340px;
}

#logo {
    text-shadow: 3px 3px 0 #000, -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
    letter-spacing: 12px;
    font-size: 60px;
}

#logo span:last-child {
    letter-spacing: 0;
}

#main-menu-container button, #menu-container button {
    display: block;
    margin: 10px auto;
    width: 300px;
}

.nav-tabs.nav-center > li {
    float:none;
    display:inline-block;
}

.nav-tabs.nav-center {
    text-align:center;
}

.nav-tabs > li.active > a {
    background-color: rgba(255, 255, 255, .2) !important;
    border-radius: 0;
}

.highscore {
    text-align: center;
}

.highscore tr td:first-child {
    text-align: left;
}

.highscore tr td:last-child {
    text-align: right;
}

.highscore tr td[colspan="8"] {
    text-align: center;
}

.minimal-form .form-group, .small-form .form-group {
    margin-bottom: 0 !important;
}

.minimal-form .control-label {
    padding-top: 0 !important;
    text-align: right;
}

.minimal-form .form-control-static {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.tetris-detail  {
    text-align: center;
    font-size: 20px;
}

#hold-container {
    height: 125px;
}

.piece-container {
    display: table;
    margin: 33px auto;
}

.piece-container .tetris-row {
    display: table-row;
}

.piece-container .tetris-cell {
    display: table-cell;
    width: 0;
    height: 0;
    padding: 0;
    float: none;
    border: none !important;
}

.piece-container .cell-interior {
    width: 0;
    height: 0;
}

.piece-container .tetris-row div[class^="tetris-cell bg-"] {
    width: 33px;
    height: 33px;
}

.piece-container .tetris-row div[class^="tetris-cell bg-"] .cell-interior {
    width: 32px;
    height: 31px;
    margin-left: 0;
}

#grid-container {
    width: 340px;
    border: 5px solid black;
    margin: auto;
}

#overlay-container {
    width: 330px;
    height: 660px;
    position: absolute;
    background-color: white;
}

.overlay-detail {
    width: 100%;
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    text-align: center;
    font-size: 100px;
}

#pause-container {
    display: none;
}

#countdown-container {
    height: 270px;
}

#tetris-container {
    width: 100%;
}

.tetris-cell {
    width: 33px;
    height: 33px;
    /*padding-bottom: 10%;*/
    float: left;
    border-top: 1px solid transparent;
    border-right: 1px solid transparent;
}

#tetris-container.grid-lines .tetris-cell {
    border-top: 1px solid #cfd8dc;
    border-right: 1px solid #cfd8dc;
}

#tetris-container.grid-lines.light .tetris-cell {
    border-top: 1px solid rgba(207, 216, 220, .3);
    border-right: 1px solid rgba(207, 216, 220, .3);
}

.cell-interior {
    margin-top: 1px;
    margin-left: 1px;

    width: 30px;
    height: 30px;

    border-right: 1px solid transparent;
    border-top: 1px solid transparent;
}

div[class^="tetris-cell bg-"] .cell-interior {
    border-top: 1px solid white;
    border-right: 1px solid white;
}

.tetris-row .tetris-cell:first-of-type .cell-interior {
    /*margin-left: 0;*/
}

.tetris-row:first-of-type .cell-interior {
    /*margin-top: 0;*/
}

#controls-container input {
    width: 100%;
    background-color: transparent;
    border: 1px solid rgba(200, 200, 200, .7);
    margin-top: 6px;
    padding: 0 10px;
    text-align: center;
}


.no-cursor {
    cursor: none;
}

.tooltip-inner {
    white-space:pre-wrap;
}

.no-padding {
    padding: 0 !important;
}

.no-margin {
    margin: 0 !important;
}

/*.white-border {*/
    /*border: 1px solid white !important;*/
/*}*/

/*.no-border {*/
    /*border: none !important;*/
/*}*/

.removed {
    /*border: none !important;*/
    transition-duration: .3s !important;
    opacity: 0;
}




/*@media (min-width: 1500px) {*/
    /*#outer-container {*/
        /*transform: scale(1.2);*/
    /*}*/
/*}*/

/*@media (min-width: 1800px) {*/
    /*#outer-container {*/
        /*transform: scale(1.4);*/
    /*}*/
/*}*/


@media (max-height: 700px) {
    #inner-container {
        width: 290px;
    }
    #main-menu-container button, #menu-container button {
        width: 250px;
    }
    .tetris-detail  {
        font-size: 20px;
    }
    #hold-container {
        height: 125px;
    }
    .piece-container {
        margin: 28px auto;
    }
    .piece-container .tetris-row div[class^="tetris-cell bg-"] {
        width: 28px;
        height: 28px;
    }
    .piece-container .tetris-row div[class^="tetris-cell bg-"] .cell-interior {
        width: 27px;
        height: 26px;
    }
    #grid-container {
        width: 290px;
    }

    #overlay-container {
        width: 280px;
        height: 560px;
    }
    .overlay-detail {
        font-size: 80px;
    }
    #countdown-container {
        height: 220px;
    }
    .tetris-cell {
        width: 28px;
        height: 28px;
    }
    .cell-interior {
        width: 25px;
        height: 25px;
    }
}

@media screen and (max-device-width: 800px) {
    body { background: url("../video/Figuring-It-Out.jpg") #000 no-repeat center center fixed; }
    #bgvid { display: none; }
}

.pulse {
    animation: pulsate 1s ease-out;
    animation-iteration-count: infinite;
    opacity: 0.0
}
@-webkit-keyframes pulsate {
    0% {transform: scale(0.1, 0.1); opacity: 0.0;}
    50% {opacity: 1.0;}
    100% {transform: scale(1.2, 1.2); opacity: 0.0;}
}

@-webkit-keyframes anim-shake {
    0% { transform: translate(2px, 1px) rotate(0deg); }
    10% { transform: translate(-1px, -2px) rotate(-1deg); }
    20% { transform: translate(-3px, 0px) rotate(1deg); }
    30% { transform: translate(0px, 2px) rotate(0deg); }
    40% { transform: translate(1px, -1px) rotate(1deg); }
    50% { transform: translate(-1px, 2px) rotate(-1deg); }
    60% { transform: translate(-3px, 1px) rotate(0deg); }
    70% { transform: translate(2px, 1px) rotate(-1deg); }
    80% { transform: translate(-1px, -1px) rotate(1deg); }
    90% { transform: translate(2px, 2px) rotate(0deg); }
    100% { transform: translate(1px, -2px) rotate(-1deg); }
}
.shake {
    animation-name: anim-shake;
    animation-duration: 0.05s;
    transform-origin:50% 50%;
    animation-iteration-count: 1;
    animation-timing-function: linear;
    overflow: hidden;
}

.red {
    color: #F44336;
}

.pink {
    color: #E91E63;
}

.purple {
    color: #9C27B0;
}

.deep-purple {
    color: #673AB7;
}

.indigo {
    color: #3F51B5;
}

.blue {
    color: #2196F3;
}

.light-blue {
    color: #03A9F4;
}

.cyan {
    color: #00BCD4;
}

.teal {
    color: #009688;
}

.green {
    color: #4CAF50;
}

.light-green {
    color: #8BC34A;
}

.lime {
    color: #CDDC39;
}

.yellow {
    color: #FFEB3B;
}

.amber {
    color: #FFC107;
}

.orange {
    color: #FF9800;
}

.deep-orange {
    color: #FF5722;
}

.brown {
    color: #795548;
}

.grey {
    color: #9E9E9E;
}

.blue-grey {
    color: #607D8B;
}

.black {
    color: #000000;
}

.white {
    color: #FFFFFF;
}

.bg-red {
    background: #F44336;
}

.bg-pink {
    background: #E91E63;
}

.bg-purple {
    background: #9C27B0;
}

.bg-deep-purple {
    background: #673AB7;
}

.bg-indigo {
    background: #3F51B5;
}

.bg-blue {
    background: #2196F3;
}

.bg-light-blue {
    background: #03A9F4;
}

.bg-cyan {
    background: #00BCD4;
}

.bg-teal {
    background: #009688;
}

.bg-green {
    background: #4CAF50;
}

.bg-light-green {
    background: #8BC34A;
}

.bg-lime {
    background: #CDDC39;
}

.bg-yellow {
    background: #FFEB3B;
}

.bg-amber {
    background: #FFC107;
}

.bg-orange {
    background: #FF9800;
}

.bg-deep-orange {
    background: #FF5722;
}

.bg-brown {
    background: #795548;
}

.bg-grey {
    background: #9E9E9E;
}

.bg-blue-grey {
    background: #607D8B;
}

.bg-black {
    background: #000000;
}

.bg-white {
    background: #FFFFFF;
}