body {
    padding-top: 70px;
}

a.banner-center {
    padding-top: 20px;
    display: table;
    margin: 0 auto;
}

#loader-input {
    width: 100%;
    height: 200px;
    font-family: "Lucida Console", Monaco, monospace;
}

td.puzzleContainer {
    vertical-align: top;
}

div.sudoku-app {
    min-width: 740px;
    width: 740px;
    margin: 0 auto;
}

div.sudoku-app * {
    -webkit-box-sizing: content-box !important;
    -moz-box-sizing: content-box !important;
    box-sizing: content-box !important;

    border-collapse: separate !important;
    line-height: normal !important;
}

table.puzzle {
    border-spacing: 0px;
    border: 1px black solid;

    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

table.puzzle tr td {
    cursor: pointer;
    cursor: hand;
}

table.puzzle tr td.cell {
    text-align: center;

    border-right: 1px black solid;
    border-bottom: 1px black solid;

    width: 60px;
    height: 60px;
    padding: 0px;
    margin: 0px;

    font-family: 'Courier';
    font-size: 34pt;

    color: saddlebrown;
}

table.puzzle tr td.block_top {
    border-top: 1px black solid;
}

table.puzzle tr td.block_left {
    border-left: 1px black solid;
}

table.puzzle tr td.cell:hover {
    background-color: #ddffdd;
}

table.puzzle tr td.odd {
    background-color: #dddddd;
}

table.puzzle tr td.even {
    background-color: #ffffff;
}

table.puzzle tr td.clue {
    color: black !important;
}

table.puzzle tr td.selected {
    font-weight: bold !important;
    background-color: lightskyblue !important;
}

table.puzzle tr td.selected_cell {
    font-weight: bold !important;
    background-color: mediumseagreen !important;
}

table.puzzle tr td.conflict {
    color: red !important;
    font-weight: bold !important;
    /*text-decoration: underline !important;*/
    text-shadow: 0px 0px 4px red !important;
}

table.pencilmark {
    border-spacing: 0px;
    width: 100%;
    height: 100%;
    border: 0px;
}

table.pencilmark tr td {
    text-align: center;
    border: 0px;
    padding: 0px;
    margin: 0px;

    font-family: 'Courier';
    font-size: 12pt;
}

td.keypadContainer {
    vertical-align: top;
    padding-left: 40px;
}

table.keypad {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

    border-spacing: 2px !important;
}

table.keypad tr td {

    text-align: center;
    border: 1px black solid;
    width: 60px;
    height: 60px;
    padding: 2px !important;
    margin: 2px !important;

    cursor: pointer;
    cursor: hand;

    font-family: 'Courier';
    font-size: 28pt;
}

table.keypad tr td:hover {
    background-color: #ddffdd !important;
}

table.keypad tr td.selected {
     font-weight: bold !important;
     background-color: lightskyblue !important;
}

table.keypad tr td.all-values-set {
    background-color: lightgray;
}

table.keypad tr td.toggled {
    font-weight: bold !important;
    background-color: lightskyblue !important;
}

table.keypad tr td.hidden-key {
    border: 0px;
    cursor: default;
    background-color: inherit !important;
}

table.keypad tr td.disabled {
    opacity: 0.4;
    filter: alpha(opacity=40); /* msie */
    cursor: default;
    background-color: inherit !important;
    /*background-color: #aaaaaa !important;*/
}

table.keypad tr td img {
    vertical-align: middle;
    width: 40px;
    height: 40px;
}

table.keypad tr td span.key-right-down {
    float: right;
    position: relative;
    top: 30px;
    font-size: 14pt;
    width: 18px;
    height: 22px;
}

table.keypad tr td span.key-left-down {
    float: left;
    position: relative;
    top: 32px;
    font-size: 14pt;
    width: 18px;
    height: 22px;
}

.dropdown ul.dropdown-menu {
    width:200px;
}
.dropdown ul.dropdown-menu>li>a>span.glyphicon {
    line-height: 1.5;
}

/*.btn-file {*/
    /*position: relative;*/
    /*overflow: hidden;*/
/*}*/
/*.btn-file input[type=file] {*/
    /*position: absolute;*/
    /*top: 0;*/
    /*right: 0;*/
    /*min-width: 100%;*/
    /*min-height: 100%;*/
    /*font-size: 100px;*/
    /*text-align: right;*/
    /*filter: alpha(opacity=0);*/
    /*opacity: 0;*/
    /*outline: none;*/
    /*background: white;*/
    /*cursor: inherit;*/
    /*display: block;*/
/*}*/

#sudoku-timer {
    width: 60px;
}

div.sweet-alert h2 {
    margin-top: 24px;
}

div.alert div.progress {
    width: 360px;
    display: inline-block;
    vertical-align: middle;
    margin-bottom: 0px;
    margin-right: 20px;
}

div.ubercmp>iframe {
    display: block;
    margin: 0 auto;
}