.crossword-hidden {
    display: none !important;
}

.crossword-message-header {
    font: normal normal 17px/23px 'PTSerif-Med';
}

.crossword-message-body {
    font-family: 'ClassGarmnd BT';
    font-size: 18px;
    padding-left:1ex;
}

.crossword-input {
    position:absolute;
    margin-left:-50000px;
}

.crossword-cell {
    width:8%;
    float:left;
}

.crossword-cell-id {
    font-family: 'Book';
    position:absolute;
    font-size:10px;
    padding:4px;
}

.crossword-cell-body {
    text-align:center;
    font-family: 'ClassGarmnd BT';
    font-size:18px;
    width:100%;
    height:100%;
    margin:0;
}


.crossword-cell-body {
    border-left:1px solid black;
    border-top:1px solid black;
    box-sizing:border-box;
}

.crossword-row-last-cell > .crossword-cell-body {
    border-right:1px solid black;
}

.crossword-row-last > .crossword-cell-body {
    border-bottom:1px solid black;
}

.crossword-cell-first-horizontal >.crossword-cell-body {
    border-left:2px solid black;
}

.crossword-cell-first-vertical > .crossword-cell-body {
    border-top:2px solid black;
}

.crossword-cell-selected {
    background-color:rgb(255, 238, 205);
}

.crossword-input-cell {
    background-color:rgb(255, 193, 160) !important;
}

.crossword-invisible {
    opacity:0;
}

.crossword-check-button {
    width: 190px;
    height: 44px;
    border: none;
    color: white;
    background: url(btn_gray_left.png) left no-repeat, url(btn_gray_right.png) right no-repeat, url(btn_gray_center.png) left repeat-x;
    font:normal normal 17px/23px 'PTSerif-Med';
}

.crossword-interaction-panel {
    display:table;
    width:100%;
    height:120px;
    padding-top:20px;
}

.crossword-interaction-panel-bottom {
    display:table-row;
    vertical-align:bottom;
}

.crossword-input-method-selection {
    text-align:right;
    float:right;
    padding-right:2.8%;
}

.crossword-input-wrong {
    background:rgb(255, 240, 240) !important;
}

.crossword-input-wrong .crossword-cell-body {
    color:rgb(191, 0, 0) !important;
}

.crossword-hint-direction {
    font:normal normal 17px/23px 'PTSerif-Med';
}

.crossword-hint-text {
    font-family: 'ClassGarmnd BT';
    font-size: 18px;
}



.mobile-input-dialog {
    font-family: 'ClassGarmnd BT';
    position:relative;
    z-index:100;
    margin:0 auto;
    padding:10px;
}

.mobile-input-dialog-body {
    padding:10px;
    background:white;
    -webkit-border-radius:10px;
    -moz-border-radius:10px;
    -ms-border-radius:10px;
    -o-border-radius:10px;
    border-radius:10px;
    border:1px solid black;
}

.mobile-input-dialog dt {
    font-family:'PTSerif-Med';
}

.mobile-input-dialog input {
    width:95%;
    font-size:18px;
    font-family: 'Freight';
    letter-spacing:2px;
    text-transform:uppercase;
}

.mobile-input-result {
    font-family:'PTSerif-Med';
}

.mobile-input-black-panel {
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    z-index:99;
    background:rgba(0, 0, 0, 0.6);
}

.mobile-input-main {
    display:none;
    width:100%;
    height:100%;
}

.mobile-input-dialog-footer {
    text-align:right;
    padding-right:10px;
    margin-top:1%;
    padding-top:1%;
}

.mobile-input-chars {
    padding-top:5px;
    font-style:italic;
}

.mobile-input-chars-left {

}

.mobile-input-dialog-btn {
    -moz-box-shadow:inset 0px 1px 0px 0px #ffffff;
    -webkit-box-shadow:inset 0px 1px 0px 0px #ffffff;
    box-shadow:inset 0px 1px 0px 0px #ffffff;
    background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #ededed), color-stop(1, #dfdfdf) );
    background:-moz-linear-gradient( center top, #ededed 5%, #dfdfdf 100% );
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ededed', endColorstr='#dfdfdf');
    background-color:#ededed;
    -webkit-border-top-left-radius:6px;
    -moz-border-radius-topleft:6px;
    border-top-left-radius:6px;
    -webkit-border-top-right-radius:6px;
    -moz-border-radius-topright:6px;
    border-top-right-radius:6px;
    -webkit-border-bottom-right-radius:6px;
    -moz-border-radius-bottomright:6px;
    border-bottom-right-radius:6px;
    -webkit-border-bottom-left-radius:6px;
    -moz-border-radius-bottomleft:6px;
    border-bottom-left-radius:6px;
    text-indent:0;
    border:1px solid #dcdcdc;
    display:inline-block;
    color:#777777;
    font-family:arial;
    font-size:15px;
    font-weight:bold;
    font-style:normal;
    height:30px;
    line-height:30px;
    text-decoration:none;
    text-align:center;
    text-shadow:1px 1px 0px #ffffff;
}

.mobile-input-dialog-default {
    -moz-box-shadow:inset 0px 1px 0px 0px #bbdaf7;
    -webkit-box-shadow:inset 0px 1px 0px 0px #bbdaf7;
    box-shadow:inset 0px 1px 0px 0px #bbdaf7;
    background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #79bbff), color-stop(1, #378de5) );
    background:-moz-linear-gradient( center top, #79bbff 5%, #378de5 100% );
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#79bbff', endColorstr='#378de5');
    background-color:#79bbff;
    -webkit-border-top-left-radius:6px;
    -moz-border-radius-topleft:6px;
    border-top-left-radius:6px;
    -webkit-border-top-right-radius:6px;
    -moz-border-radius-topright:6px;
    border-top-right-radius:6px;
    -webkit-border-bottom-right-radius:6px;
    -moz-border-radius-bottomright:6px;
    border-bottom-right-radius:6px;
    -webkit-border-bottom-left-radius:6px;
    -moz-border-radius-bottomleft:6px;
    border-bottom-left-radius:6px;
    text-indent:0;
    border:1px solid #84bbf3;
    display:inline-block;
    color:#ffffff;
    font-family:Arial;
    font-size:15px;
    font-weight:bold;
    font-style:normal;
    height:30px;
    line-height:30px;
    text-decoration:none;
    text-align:center;
    text-shadow:1px 1px 0px #528ecc;
}

@media (max-width:341px) {
    .crossword-cell {
        width:7.9%;
    }
}

@media (max-width:380px) {
    .crossword-cell-id {
        padding-top:2px;
    }

    .crossword-cell-body {
        font-size:14px;
    }
}

@media (min-width:381px) and (max-width:460px) {
    .crossword-cell-id {
        padding-top:2px;
        font-size:9px;
    }

    .crossword-cell-body {
        font-size:14px;
    }
}

@media (max-width:453px) {
    .crossword-interaction-panel {
        height:160px;
    }
}

@media (max-width:570px) {
    .crossword-message-body {
        padding-left:0;
        display:block;
    }
}

@media screen and (orientation:portrait) and (min-width:510px) and (max-width:639px) {
    .crossword-cell-id {
        padding-top:2px;
        font-size:9px;
    }
}

@media screen and (orientation:portrait) and (min-width:570px) and (max-width:639px) {
    .crossword-cell-body {
        font-size:12px;
    }
}

@media screen and (orientation:portrait) and (min-width:640px) and (max-width:720px) {
    .crossword-cell-id {
        padding-top:2px;
        font-size:9px;
    }

    .crossword-cell-body {
        font-size:14px;
    }
}

@media (min-width:840px) {
    .crossword-cell-id {
        padding-left:5px;
        font-size:12px;
    }

    .crossword-cell-body {
        font-size:22px;
    }

    .crossword-cell-first-horizontal > .crossword-cell-body {
        border-left:3px solid black;
    }

    .crossword-cell-first-vertical > .crossword-cell-body {
        border-top:3px solid black;
    }
}
