/* crossword */

.fwq-crossword-grid, .fwq-crossword-numbers {
   border-collapse: collapse;
}

.fwq-crossword-grid td, .fwq-crossword-numbers td {
   width: 36px;
   height: 36px;
   padding: 0 0;
   text-align: center;
}

.fwq-crossword-grid td div.fwq-crossword-td-filled, .fwq-crossword-grid td div.fwq-crossword-td-empty {
   width: 36px;
   height: 36px;
   padding: 0 0;
   position: relative;
}

.fwq-crossword-grid td {
   border: 1px solid black;
}

.fwq-crossword-td-filled, .fwq-crossword-td-bs-hv, .fwq-crossword-td-bs-h, .fwq-crossword-td-bs-v {
   background-repeat: no-repeat;
   background-position: 0px 0px;
}

.fwq-crossword-td-filled {
   background-color: #808080;
}

.fwq-crossword-td-bs-hv {
   background-image: url('img/backdiag.png');
}

.fwq-crossword-td-bs-h {
   background-image: url('img/backgraybot.png');
}

.fwq-crossword-td-bs-v {
   background-image: url('img/backgraytop.png');
}

.fwq-crossword-digit {
   position: absolute;
}

/* number picker */

.fwq-crossword-numbers {
   margin-top: 1em;
   margin-bottom: 0.5em;
}

.fwq-crossword-selected {
   background-color: #aaa;
}

.fwq-crossword-errors {
   color: red;
   background: yellow;
}

.fwq-crossword-solved {
   font-weight: bold;
   color: green;
   background: yellow;
}

.fwq-crossword-error-rgn {
   background: #fc83b9;
   color: black;
}

.fwq-crossword-error-empty {
   background: #ffff80;
}

.fwq-crossword dt {
   clear: both;
   display: block;
   float: left;
   width: 36px;
   text-align: right;
   margin-right: 0;
}

.fwq-crossword dd {
   display: block;
   float: left;
   width: 275px;
   margin-left: 4px;
   padding-left: 4px;
}

div.fwq-crossword-def-horiz, div.fwq-crossword-def-vert {
   float: left;
   width: 320px;
   margin: 1em 0;
}

div.fwq-crossword-def-vert {
   margin-left: 4px;
}

div.fwq-crossword-def-horiz > p, div.fwq-crossword-def-vert > p {
   margin: 0 1em;
}

div.fwq-crossword-num {
   position: absolute;
   width: 36px;
   height: 36px;
   padding: 0 0;
   top: -3px;
   left: 0px;
   text-align: left;
   vertical-align: text-top;
   font-size: 75%;
   letter-spacing: -1px;
}

div.fwq-crossword-modify {
   position: absolute;
   top: 0;
   left: 0;
   width: 36px;
   height: 36px;
   padding: 0 0;
   font-size: 24px;
   text-align: center;
}

div.fwq-crossword-modify div {
    line-height: 0px;
    height: 0px;
    margin: 18px 0;
}

div.fwq-crossword-input {
   position: absolute;
   top: 0;
   left: 0;
   width: 36px;
   height: 36px;
   z-index: 1;
   background-image: url(img/nofocus.png);
}

div.fwq-crossword-input:focus {
   background-image: url(img/focus.png);
}

.fwq-crossword-def-highlight {
   background-color: yellow;
}

table.fwq-crossword-def-horiz, table.fwq-crossword-def-vert {
   float: left;
   margin-bottom: 8px;
}
table.fwq-crossword-def-horiz caption, table.fwq-crossword-def-vert caption {
   caption-side: top;
   padding: 2px 1em;
   background-color: transparent;
   font-weight: bold;
}
table.fwq-crossword-def-horiz td, table.fwq-crossword-def-vert td {
   vertical-align: top;
   padding: 1.5px 4px 1.5px 4px;
}
table.fwq-crossword-def-horiz .fwq-word, table.fwq-crossword-def-vert .fwq-word {
   width: 2em;
   padding-left: 0px;
   font-weight: bold;
   text-align: right;
}

div.fwq-crossword-buttons {
    clear: both;
    margin-top: 0px;
}   margin-bottom: 14px;
}