

body {
    overflow: hidden;
    -ms-touch-action: none;
    touch-action: none;    
    margin: 0;
    padding: 0;
}

body {
    text-align: center;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    font-size: 15px;
}

.wordsearch a,
.wordsearch h3,
.wordsearch div {
    text-shadow: none!important;
    -moz-text-shadow: none!important;
    -webkit-text-shadow: none!important;
}

body .ui-page {
    background: none;
    overflow: hidden!important;
    height: 100%;
}

.ui-header {
    font-size: 16px;
}

#soup {
    display: inline-block;
}

.html5-wordsearch {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    text-align: left;
    position: relative;
}

.html5-wordsearch * {
    padding: 0;
    margin: 0;
}

.html5-wordsearch {
    width: 100%;
}

.html5-wordsearch .container {
    float: left;
    margin-left: 11px;
}

.html5-wordsearch .container#right {
    margin-left: 21px;
}

.html5-wordsearch .container div {
    position: relative;
}

.html5-wordsearch .container canvas {
    position: absolute;
    top: 0;
    left: 0;
    cursor: pointer;
}

.html5-wordsearch #html5-wordsearch-fx {
    pointer-events: none;
}

.html5-wordsearch .container.board {
    margin-left: 25px;
}

canvas.lines {
    background: #fff;
}

.loading canvas.grid {
    background: url(../images/loader.gif) center no-repeat white;
}

.html5-wordsearch .container .topbar {
    height: 30px;
    line-height: 30px;
    color: white;
    font-size: 1.2em;
}

.difficulty {
    text-transform: capitalize;
}

.html5-wordsearch .container .center h3 {
    float: left;
}

.html5-wordsearch .container .center > span {
    float: right;
}

.html5-wordsearch .container .right,
.right {
    text-align: right;
}

/**
 * Main Menu
 */
.main-menu {
    margin-top: 30px;
    list-style: none;
    text-align: center;
}

.main-menu li a {
    display: block;
    width: 80px;
    padding-top: 80px;
    text-decoration: none;
    color: white!important;
    outline: none;
}

/*
    ADS
 */
.html5-wordsearch-ads {
    margin: 20px 0px 0px 20px;
    width: 160px;
    height: 600px;
    background: white;
    position: absolute;
}

/*
    LISTA DE PALABRAS
 */
.html5-wordsearch .list {
    background: #fff;
    width: 250px;
    overflow-y: auto;
    overflow-x: hidden;
    text-align: left;
    font-family: Calibri, Helvetica, Arial, sans-serif;
    font-size: 18px;
    font-weight: bold;
}

.html5-wordsearch .list,
.html5-wordsearch #canvas {
    box-shadow: 0 0 5px rgba(0, 0, 0, .5);
}

.html5-wordsearch .list li {
    position: relative;
    padding: 14px 14px 0px 14px;
    line-height: 21px;
    color: #333;
    transition: all .3s ease-in-out;
    list-style: none;
}

.html5-wordsearch .list li:last-child {
    margin-bottom: 40px;
}

.html5-wordsearch .list li a {
    outline: none;
    color: #676f7f;
    font-weight: normal;
    font-size: 11px;
    padding: 6px 8px 6px 8px;
    background: #f1f0f0;
    border-radius: 3px;
    position: absolute;
    right: 6px;
    top: 50%;
    margin-top: -.75em;
    line-height: 1.5em;
    text-decoration: none;
    -webkit-border-radius: 3px;
       -moz-border-radius: 3px;
         -o-border-radius: 3px;
        -ms-border-radius: 3px;
            border-radius: 3px;
    -webkit-text-shadow: 0 1px #fff;
       -moz-text-shadow: 0 1px #fff;
            text-shadow: 0 1px #fff;
    text-transform: capitalize;
    font-family: Arial;
}

.html5-wordsearch .list .list--divisor {
    padding: 8px 0!important;
    display: none;
}

.html5-wordsearch .list  .list--divisor span {
    display: inline-block;
    width: 100%;
    background: #aaa;
    height: 2px;
}

.html5-wordsearch .list li.crossed a,
body.disable-hints .html5-wordsearch .list li a {
    visibility: hidden;
}

.html5-wordsearch .list li span {
    position: relative;
    text-transform: uppercase;
}

.html5-wordsearch .list li.crossed span {
    color: rgb(127, 127, 127);
    font-weight: normal;
}

.html5-wordsearch .list li.crossed span:after {
    content: "";
    width: 110%;
    height: 1px;
    background: rgb(127, 127, 127);
    position:absolute;
    left: -5%;
    top: 50%;
}

.html5-wordsearch .list li.crossed.bad span {
    color: rgb(185, 0, 30);
}

.html5-wordsearch .list li.crossed.bad span:after {
    background: rgb(185, 0, 30);
}

/* CATEGORIES */
#categories-list {
    max-height: 400px;
    overflow-y: auto;
}

.cat-label {
    font-style: italic;
    position: absolute;
    right: 185px;
    background: #3388cc;
    padding: 0px 5px;
    border-radius: 2px;
    color: #fff;
    font-size: 14px;
    pointer-events: none;
}

/* SCROLLBAR */
::-webkit-scrollbar {  
    width: 12px;  
}

::-webkit-scrollbar-track {  
    background-color: #eaeaea;  
    border-left: 1px solid #ccc;  
}

::-webkit-scrollbar-thumb {  
    background-color: #ccc;
}  
::-webkit-scrollbar-thumb:hover {  
    background-color: #aaa;  
}

#settings,
#more,
#more-games,
#help,
#options,
#confirm-modal,
#newGame,
.menu-popup {
    min-width: 300px;
}

#categories {
    width: 620px;
}

#congratulation {
    min-width: 350px;
}

.congratulation-message {
    padding-left: 125px;
    background: url(../images/others/check_solve.png) no-repeat 5px 0px;
    text-align: left;
    margin: 0 10px 20px 0;
    min-height: 100px;
}

.congratulation-message.won {
    background: url(../images/others/check.png) no-repeat 5px 0px;
}

.congratulation-message > * {
    margin: 10px;
}

.game-completed {
    color: rgb(185, 0, 30);
    font-size: 1.1em;
    margin-bottom: 20px;
}

#help {
    max-width: 600px;
    height: 400px;
}

#help-content {
    overflow: auto;
    height: 260px;
}

#help-content p {
    text-align: left;
}

#help-content h3 {
    text-align: left;
}

#help-content li {
    text-align: left;
    list-style-type: square;
}

#backgrounds {
    width: 700px;
}

#font-tab,
#bg-tab {
    max-height: 300px;
    overflow: auto;
}

/* Background selector */
#backgrounds .ui-grid-b b {
    display: block;
}

#appearance-tabs {
    width: 250px;
    margin-bottom: 15px;
}

#appearance-tabs li:first-child a {
    -webkit-border-radius: 3px 0 0 3px;
       -moz-border-radius: 3px 0 0 3px;
            border-radius: 3px 0 0 3px;
}

#appearance-tabs li:last-child a {
    -webkit-border-radius: 0 3px 3px 0;
       -moz-border-radius: 0 3px 3px 0;
            border-radius: 0 3px 3px 0;
}

#backgrounds .box {
    background: #eee;
    cursor: pointer;
    display: block;
    -webkit-border-radius: 3px;
       -moz-border-radius: 3px;
            border-radius: 3px;
    margin: 5px;
    padding: 5px;
}

#game-container {
    position: relative;
    /*margin-left: 200px;*/
    margin-left: 120px;
    height: 100%;
    width: auto;
    /*todo: raymond*/
    background: url(../images/backgrounds/normal/blue_felt.jpg);
    -webkit-background-size: 100% 100%;
    -moz-background-size: 100% 100%;
    -o-background-size: 100% 100%;
    background-size: 100% 100%;
}

/* STATS */
#categories .level-buttons {
    position: relative;
    padding: 5px 0;
}
.stats {
    height: 43px;
    position: absolute;
    width: 180px;
    top: 0;
    right: 0;
}

.stats-labels {
    text-align: left;
    right: 0;
    bottom: 0px;
    position: absolute;
    width: 180px;
}

.stats-labels span {
    line-height: 1em;
    font-size: 14px;
    width: 33%;
    display: inline-block;
    align-items: center;
    float: left;
    text-align: center;
}

.stat {
    display: inline-block;
    width: 33%;
    height: 43px;
    background-size: 24px;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    border-left: 1px solid #ddd;
    float: left;
    box-sizing: border-box;
}

#categories-list .ui-btn.ui-btn-active {
    border-top-color: #ddd;
}

.stat-won {
    background-image: url(../images/icons/won.png);
}

.stat-lost {
    background-image: url(../images/icons/lost.png);
}

.button-label {
    text-align: left;
    display: inline-block;
    pointer-events: none;
}

.button-icon {
    vertical-align: middle;
    padding-right: 10px;
}

/* close button */
.ui-header .back-to-game.hide-onphone {
    border-color: transparent!important;
    box-shadow: none!important;
    border-radius: 0;
    text-indent: -10000px;
    background: url(../images/others/close.svg);
    background-repeat: no-repeat;
    background-position: 0px;
    background-size: 88px 30px;
    width: 44px;
    height: 30px;
    top: 5px;
    right: 5px;
    left: auto;
    box-sizing: border-box;
}

.ui-header .back-to-game.hide-onphone:hover {
    background-position: -44px;
}

.ui-popup .ui-title {
    margin: 0;
    cursor: move;
}

/* new game modal */
#newGame .ui-content a > span {
    text-align: left;
    display: inline-block;
    width: 40%;
    position: relative;
    pointer-events: none;
}

.level-icon {
    display: inline-block;
    width: 1em;
    height: 1em;
    vertical-align: text-bottom;
    margin-right: 15px;
}

.level-icon.hard {
    background: #ee4429;
}

.level-icon.medium {
    background: #ffc932;
}

.level-icon.easy {
    background: #50b24c;
}

/* Legends */
.legend {
    font-size: 14px;
    padding-left: 23px;
    margin-left: 16px;
    display: inline-block;
    height: 20px;
    line-height: 20px;
    background-position: left center;
    background-size: contain;
    background-repeat: no-repeat;
}

.legend--game-won {
    background-image: url(../images/icons/won.png);
    margin-left: auto;
}

.legend--game-lost {
    background-image: url(../images/icons/lost.png);
}

/* SVG CHART */
.chart-won {
    fill: #a2e100;
}

.chart-lost {
    fill: #e12b1e;
}

.chart-empty {
    fill: gray;
}

#totalScore table {
    width: 450px;
    text-align: left;
    margin: 10px auto;
    padding: 0 20px;
}

#totalScore table td {
    padding: 3px;
    width: 50%;
}

.chart-label {
    width: 100;
    line-height: 1.6em;
    padding: 0 0 0 20px;
    display: flex;
    position: relative;
}
.chart-label__value {
    margin-left: auto;
}
.chart-label--lost {
    margin-bottom: 16px;
}
.chart-label--won:before,
.chart-label--lost:before {
    content: "";
    display: inline-block;
    width: 8px;
    height: 8px;
    position: absolute;
    left: 5px;
    top: 50%;
    margin-top: -4px;
    border-radius: 50%;
}

.chart-label--won:before {
    background: #a2e100;
}
.chart-label--lost:before {
    background: #e12b1e;
}
/* weekly stats */
#weeklyChart table {
    border-collapse: collapse;
    margin-top: 20px;
    width: 100%;
}

#weeklyChart table td,
#weeklyChart table th {
    padding: 5px 10px;
    font-size: 16px;
    border: 1px solid #aaa;
    width: 22%;
}

#weeklyChart table td:nth-child(1),
#weeklyChart table th:nth-child(1) {
    text-align: left;
    width: 34%;
}


#weeklyChart table thead th {
    background: #90bee5;
}

#weeklyChart table tr.current-day td {
    font-weight: bold;
}

#weeklyChart table tr:nth-child(odd) td {
    background: #f6f6f6;
}


#weeklyChart .ui-navbar .ui-tabs-anchor {
    box-shadow: none!important;
}

#weeklyChart .ui-navbar .ui-tabs-anchor span {
    box-shadow: none!important;
    font-size: 16px;
}

.ui-tabs-active a.ui-btn,
.ui-tabs-active a.ui-btn:hover {
    background-color: #38c;
    border-color: #38c;
    color: #fff;
}

#remaining-words {
    position: absolute;
    top: 100%;
    padding: 0 14px;
    margin-top: -37px;
    background: #fff;
    height: 37px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    line-height: 37px;
    font-weight: normal;
    z-index: 100;
    font-family: Calibri, Helvetica, Arial, sans-serif;
    font-size: 18px;
    text-transform: uppercase;
    border-top: 2px solid #aaa;
}

/* Settings */
.switch-setting {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.switch-setting label,
.radio-setting legend {
    margin: 0;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
       -moz-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    text-align: left;
}

.radio-setting .ui-controlgroup-controls  {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
}

.radio-setting .ui-radio  {
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
       -moz-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
}

.radio-setting .ui-radio label {
    text-align: center;
}

#options .ui-content {
    padding: 0;
}

#options {
    width: 350px;
}

#options .setting > label {
    text-align: left;
}
#options .setting {
    padding: 10px 20px;
    border-bottom: 1px solid #e9e9e9;
}

#options .setting:last-child {
    border-bottom: none;
}

.flex-container {
    display: flex;
    align-items: center;
}
.ui-btn.btn-nomargin {
    margin: 0;
}
