
@font-face {
    font-family: iconfont;
    src: url(../fonts/iconfont.eot);
    src: url(../fonts/iconfont.eot?#iefix) format('embedded-opentype'), url(../fonts/iconfont.woff) format('woff'), url(../fonts/iconfont.ttf) format('truetype'), url(../fonts/iconfont.svg#iconfont) format('svg')
}

.iconfont {
    font-family: iconfont !important;
    font-size: 16px;
    font-style: normal;
    -webkit-font-smoothing: antialiased;
    -webkit-text-stroke-width: .2px;
    -moz-osx-font-smoothing: grayscale
}

html {
    color: #545454;
    background-color: #000;
    -webkit-text-size-adjust: 100%;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -webkit-tap-highlight-color: transparent
}

blockquote, body, button, dd, dl, dt, fieldset, form, h1, h2, h3, h4, h5, h6, hr, html, img, input, legend, li, ol, p, pre, td, textarea, th, ul {
    margin: 0;
    padding: 0
}

body, button, input, select, textarea {
    font: 14px/1.5 "Helvetica neue", Helvetica, Tahoma, Arial, "\5FAE\8F6F\96C5\9ED1", "\5B8B\4F53", sans-serif
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    margin: 0;
    padding: 0;
    display: block
}

audio, canvas, video {
    display: inline-block
}

img {
    border: 0;
    max-width: 100%;
    height: auto
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

h1, h2, h3, h4, h5, h6 {
    font-size: 100%
}

em, i {
    font-style: normal
}

ol, ul {
    list-style: none
}

button {
    cursor: pointer;
    border: 0
}

a:link, a:visited {
    text-decoration: none;
    -webkit-tap-highlight-color: transparent
}

a:active, a:hover {
    text-decoration: none
}

.hide {
    display: none
}

.tac {
    text-align: center
}

body {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-color: #e1e1e1
}

#container {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto
}

.page {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    border-top: 2px solid #333;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box
}

#room header {
    width: 96%;
    font-size: 20px;
    color: #ccc;
    font-weight: 700;
    text-shadow: 1px 1px 1px #f4f4f4;
    text-align: center;
    height: 40px;
    line-height: 40px;
    position: absolute;
    top: 10px;
    left: 2%
}

#room header #menu, #room header #restartTrigger {
    height: 20px;
    width: 20px;
    padding: 10px;
    float: right;
    background-color: #eee;
    border-radius: 5px;
    box-shadow: 1px 1px 1px rgba(0, 0, 0, .1);
    cursor: pointer
}

#room header #menu {
    float: left
}

#room header #menu .icon, #room header #restartTrigger .icon {
    display: block;
    height: 20px;
    width: 20px;
    background-image: url(../img/icons.png);
    background-repeat: no-repeat;
    -webkit-background-size: 40px 20px;
    background-size: 40px 20px;
    margin: 0 auto
}

#room header #menu .icon {
    background-position: -20px 0
}

#chessboard {
    width: 310px;
    height: 310px;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    1 border-radius: 8px;
    1 -webkit-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, .3), inset -1px -1px 1px rgba(0, 0, 0, .3);
    1 -moz-box-shadow: inset 1px 1px 1px rgba(0, 0, 0, .3), inset -1px -1px 1px rgba(0, 0, 0, .3);
    1 box-shadow: inset 1px 1px 1px rgba(0, 0, 0, .3), inset -1px -1px 1px rgba(0, 0, 0, .3)
}

#grids {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

#grids span.f {
    color: #108ED5
}

#grids span {
    display: inline-block;
    width: 33px;
    height: 33px;
    background-color: #f2f2f2;
    border-radius: 2px;
    text-align: center;
    line-height: 32px;
    font-size: 20px;
    cursor: pointer;
    float: left;
    position: relative;
    margin-left: 1px;
    margin-bottom: 1px;
    z-index: 1;
    box-shadow: 1px 1px 3px #aaa
}

#grids span.mr {
    margin-right: 1px
}

#grids span.mt {
    margin-top: 1px
}

#grids span.active {
    background-color: #D5EAFF
}

#grids span.err {
    background-color: #FFBEBE
}

#grids span i {
    display: block;
    height: 11px;
    width: 11px;
    font-size: 8px;
    line-height: 11px;
    color: #E95603;
    text-align: center;
    position: absolute
}

#grids span i.m1, #grids span i.m2, #grids span i.m3 {
    top: 0
}

#grids span i.m4, #grids span i.m5, #grids span i.m6 {
    top: 11px
}

#grids span i.m7, #grids span i.m8, #grids span i.m9 {
    top: 22px
}

#grids span i.m2, #grids span i.m5, #grids span i.m8 {
    left: 11px
}

#grids span i.m3, #grids span i.m6, #grids span i.m9 {
    left: 22px
}

#dialog {
    position: absolute;
    z-index: 100;
    width: 150px;
    height: 200px;
    display: none;
    border-radius: 3px;
    background-color: rgba(0, 0, 0, .8)
}

#dialog span {
    display: inline-block;
    float: left;
    width: 33.333%;
    height: 25%;
    line-height: 50px;
    text-align: center;
    font-size: 22px;
    color: #ddd;
    font-weight: 700;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    position: relative;
    cursor: pointer;
    border-right: 1px solid rgba(184, 229, 255, .2);
    border-bottom: 1px solid rgba(184, 229, 255, .2)
}

#dialog span .m {
    display: none
}

#dialog.mark span .m {
    display: inline-block;
    height: 6px;
    width: 6px;
    border-radius: 50%;
    background-color: #666;
    position: absolute;
    top: 5px;
    right: 5px
}

#dialog span.on .m {
    background-color: #F57119
}

#dialog span:nth-child(3n) {
    border-right: none
}

#dialog span.big {
    border-bottom: none
}

#dialog span#d-clear, #dialog span#d-mark {
    width: 50%;
    font-size: 14px;
    font-weight: 400
}

#dialog span#d-mark {
    border-right: none
}

#dialog.mark span#d-mark {
    color: #F57119
}

.confirm {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .5);
    z-index: 101
}

.confirm .inner {
    max-width: 260px;
    padding: 10px;
    font-size: 16px;
    height: 165px;
    line-height: 40px;
    background-color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto
}

.confirm .btn {
    display: inline-block;
    height: 35px;
    line-height: 35px;
    width: 100px;
    text-align: center;
    background-color: #123;
    margin-top: 10px;
    color: #fff;
    cursor: pointer;
    font-size: 16px
}

.confirm .btn.js-share {
    margin-left: 10px
}

.confirm h2 {
    font-size: 25px;
    line-height: 40px;
    color: #900
}

.footer {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    text-align: center;
    padding: 5px 0;
    color: #bbb;
    font-size: 10px;
    text-shadow: 1px 1px 1px #fff
}

#lvList {
    background-color: rgba(0, 0, 0, .5);
    z-index: 200
}

#difficulty {
    max-width: 300px;
    height: 470px;
    background-color: #fff;
    padding: 10px 20px 20px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto
}

#difficulty .btn {
    width: 100%;
    height: 50px;
    line-height: 50px;
    text-align: center;
    background-color: #123;
    margin-top: 10px;
    color: #fff;
    cursor: pointer;
    font-size: 16px;
    position: relative
}

#difficulty .btn span {
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    height: 15px;
    line-height: 15px;
    font-size: 12px;
    padding-right: 3px;
    color: #999
}

@media all and (orientation: landscape) {
    #room header {
        width: 50px;
        height: 92%;
        max-height: 360px;
        left: 30px;
        top: 0;
        bottom: 0;
        margin: auto;
        position: absolute
    }

    #room header #menu, #room header #restartTrigger {
        position: absolute;
        bottom: 10px;
        left: 0;
        width: 100%;
        padding: 10px 0;
        text-align: center
    }

    #room header #restartTrigger {
        bottom: 60px
    }

    .footer {
        display: none
    }
}

#grids span.s0, #grids span.s1, #grids span.s2, #grids span.s3, #grids span.s4, #grids span.s5, #grids span.s6, #grids span.s7, #grids span.s8 {
    top: 1px
}

#grids span.s10, #grids span.s11, #grids span.s12, #grids span.s13, #grids span.s14, #grids span.s15, #grids span.s16, #grids span.s17, #grids span.s9 {
    top: 35px
}

#grids span.s18, #grids span.s19, #grids span.s20, #grids span.s21, #grids span.s22, #grids span.s23, #grids span.s24, #grids span.s25, #grids span.s26 {
    top: 69px
}

#grids span.s27, #grids span.s28, #grids span.s29, #grids span.s30, #grids span.s31, #grids span.s32, #grids span.s33, #grids span.s34, #grids span.s35 {
    top: 105px
}

#grids span.s36, #grids span.s37, #grids span.s38, #grids span.s39, #grids span.s40, #grids span.s41, #grids span.s42, #grids span.s43, #grids span.s44 {
    top: 139px
}

#grids span.s45, #grids span.s46, #grids span.s47, #grids span.s48, #grids span.s49, #grids span.s50, #grids span.s51, #grids span.s52, #grids span.s53 {
    top: 173px
}

#grids span.s54, #grids span.s55, #grids span.s56, #grids span.s57, #grids span.s58, #grids span.s59, #grids span.s60, #grids span.s61, #grids span.s62 {
    top: 209px
}

#grids span.s63, #grids span.s64, #grids span.s65, #grids span.s66, #grids span.s67, #grids span.s68, #grids span.s69, #grids span.s70, #grids span.s71 {
    top: 243px
}

#grids span.s72, #grids span.s73, #grids span.s74, #grids span.s75, #grids span.s76, #grids span.s77, #grids span.s78, #grids span.s79, #grids span.s80 {
    top: 277px
}

#grids span.s0, #grids span.s18, #grids span.s27, #grids span.s36, #grids span.s45, #grids span.s54, #grids span.s63, #grids span.s72, #grids span.s9 {
    left: 1px
}

#grids span.s1, #grids span.s10, #grids span.s19, #grids span.s28, #grids span.s37, #grids span.s46, #grids span.s55, #grids span.s64, #grids span.s73 {
    left: 35px
}

#grids span.s11, #grids span.s2, #grids span.s20, #grids span.s29, #grids span.s38, #grids span.s47, #grids span.s56, #grids span.s65, #grids span.s74 {
    left: 69px
}

#grids span.s12, #grids span.s21, #grids span.s3, #grids span.s30, #grids span.s39, #grids span.s48, #grids span.s57, #grids span.s66, #grids span.s75 {
    left: 105px
}

#grids span.s13, #grids span.s22, #grids span.s31, #grids span.s4, #grids span.s40, #grids span.s49, #grids span.s58, #grids span.s67, #grids span.s76 {
    left: 139px
}

#grids span.s14, #grids span.s23, #grids span.s32, #grids span.s41, #grids span.s5, #grids span.s50, #grids span.s59, #grids span.s68, #grids span.s77 {
    left: 173px
}

#grids span.s15, #grids span.s24, #grids span.s33, #grids span.s42, #grids span.s51, #grids span.s6, #grids span.s60, #grids span.s69, #grids span.s78 {
    left: 209px
}

#grids span.s16, #grids span.s25, #grids span.s34, #grids span.s43, #grids span.s52, #grids span.s61, #grids span.s7, #grids span.s70, #grids span.s79 {
    left: 243px
}

#grids span.s17, #grids span.s26, #grids span.s35, #grids span.s44, #grids span.s53, #grids span.s62, #grids span.s71, #grids span.s8, #grids span.s80 {
    left: 277px
}

@media all and (min-width: 400px) and (orientation: portrait) {
    #chessboard {
        width: 393px;
        height: 393px
    }

    #grids span {
        height: 42px;
        width: 42px;
        line-height: 50px
    }

    #grids span.mr {
        margin-right: 2px
    }

    #grids span.mt {
        margin-top: 2px
    }

    #grids span i {
        height: 17px;
        width: 17px;
        font-size: 10px;
        line-height: 17px;
        color: #E95603;
        text-align: center;
        position: absolute
    }

    #grids span i.m1, #grids span i.m2, #grids span i.m3 {
        top: 0
    }

    #grids span i.m4, #grids span i.m5, #grids span i.m6 {
        top: 14px
    }

    #grids span i.m7, #grids span i.m8, #grids span i.m9 {
        top: 28px
    }

    #grids span i.m2, #grids span i.m5, #grids span i.m8 {
        left: 14px
    }

    #grids span i.m3, #grids span i.m6, #grids span i.m9 {
        left: 28px
    }
}

@media all and (min-width: 480px) and (orientation: portrait) {
    #chessboard {
        width: 475px;
        height: 475px
    }

    #grids span {
        height: 51px;
        width: 51px;
        line-height: 50px
    }

    #grids span.mr {
        margin-right: 2px
    }

    #grids span.mt {
        margin-top: 2px
    }

    #grids span i {
        height: 17px;
        width: 17px;
        font-size: 10px;
        line-height: 17px;
        color: #E95603;
        text-align: center;
        position: absolute
    }

    #grids span i.m1, #grids span i.m2, #grids span i.m3 {
        top: 0
    }

    #grids span i.m4, #grids span i.m5, #grids span i.m6 {
        top: 17px
    }

    #grids span i.m7, #grids span i.m8, #grids span i.m9 {
        top: 34px
    }

    #grids span i.m2, #grids span i.m5, #grids span i.m8 {
        left: 17px
    }

    #grids span i.m3, #grids span i.m6, #grids span i.m9 {
        left: 34px
    }
}

@media all and (min-height: 400px) and (orientation: landscape) {
    #chessboard {
        width: 393px;
        height: 393px
    }

    #grids span {
        height: 42px;
        width: 42px;
        line-height: 50px
    }

    #grids span.mr {
        margin-right: 2px
    }

    #grids span.mt {
        margin-top: 2px
    }

    #grids span i {
        height: 17px;
        width: 17px;
        font-size: 10px;
        line-height: 17px;
        color: #E95603;
        text-align: center;
        position: absolute
    }

    #grids span i.m1, #grids span i.m2, #grids span i.m3 {
        top: 0
    }

    #grids span i.m4, #grids span i.m5, #grids span i.m6 {
        top: 14px
    }

    #grids span i.m7, #grids span i.m8, #grids span i.m9 {
        top: 28px
    }

    #grids span i.m2, #grids span i.m5, #grids span i.m8 {
        left: 14px
    }

    #grids span i.m3, #grids span i.m6, #grids span i.m9 {
        left: 28px
    }
}

@media all and (min-height: 480px) and (orientation: landscape) {
    #chessboard {
        width: 475px;
        height: 475px
    }

    #grids span {
        height: 48px;
        width: 48px;
        line-height: 50px
    }

    #grids span.mr {
        margin-right: 2px
    }

    #grids span.mt {
        margin-top: 2px
    }

    #grids span i {
        height: 17px;
        width: 17px;
        font-size: 10px;
        line-height: 17px;
        color: #E95603;
        text-align: center;
        position: absolute
    }

    #grids span i.m1, #grids span i.m2, #grids span i.m3 {
        top: 0
    }

    #grids span i.m4, #grids span i.m5, #grids span i.m6 {
        top: 17px
    }

    #grids span i.m7, #grids span i.m8, #grids span i.m9 {
        top: 34px
    }

    #grids span i.m2, #grids span i.m5, #grids span i.m8 {
        left: 17px
    }

    #grids span i.m3, #grids span i.m6, #grids span i.m9 {
        left: 34px
    }
}

#share {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .7);
    display: none;
    z-index: 110
}

#share img {
    height: 150px;
    width: 180px;
    position: absolute;
    right: 0;
    top: 0
}