/* HTML5 ✰ Boilerplate
 * ==|== normalize ==========================================================
 */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
  display: block;
}
audio, canvas, video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}
audio:not([controls]) {
  display: none;
}
[hidden] {
  display: none;
}

html {
  font-size: 100%;
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}
body {
  margin: 0;
  font-size: 13px;
  line-height: 1.231;
}
body, button, input, select, textarea {
  font-family: sans-serif;
  color: #222;
}

::-moz-selection {
  background: transparent;
  color: inherit;
  text-shadow: none;
}
::selection {
  background: transparent;
  color: inherit;
  text-shadow: none;
}

a { color: #00e; }
a:visited { color: #551a8b; }
a:hover { color: #06e; }
a:focus { outline: thin dotted; }
a:hover, a:active { outline: 0; }

abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
dfn { font-style: italic; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
ins { background: #ff9; color: #000; text-decoration: none; }
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
pre, code, kbd, samp { font-family: monospace, monospace; _font-family: 'courier new', monospace; font-size: 1em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
q { quotes: none; }
q:before, q:after { content: ""; content: none; }
small { font-size: 85%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }
img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }
svg:not(:root) { overflow: hidden; }
figure { margin: 0; }

form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }
label { cursor: pointer; }
legend { border: 0; *margin-left: -7px; padding: 0; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; *overflow: visible; }
table button, table input { *overflow: auto; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }

table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: center; }

* {
    -webkit-user-select: none;  /* Chrome all / Safari all */
    -moz-user-select: none;     /* Firefox all */
    -ms-user-select: none;      /* IE 10+ */
      /* No support for these yet, use at own risk */
    -o-user-select: none;
    user-select: none;
}

@font-face {
    font-family: 'TeXGyreAdventorBold';
    src: url('../fonts/texgyreadventor-bold-webfont.eot');
    src: url('../fonts/texgyreadventor-bold-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/texgyreadventor-bold-webfont.svg') format('svg'),
         url('../fonts/texgyreadventor-bold-webfont.woff') format('woff'),
         url('../fonts/texgyreadventor-bold-webfont.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

html, body { height: 100%;  }
/*背景色*/
body {
  background: #fff;
  font-family: Helvetica, Arial, sans-serif;
  color: black;
  position: relative;
  overflow: hidden;
}
h1, h2, h3, h4, h5, h6 {
  font-family: 'TeXGyreAdventorBold', arial, sans-serif;
  letter-spacing: -1px;
}
h1 { font-size: 200px; }
h2 { font-size: 48px; }
h3 { font-size: 24px; }
h4 { font-size: 18px; }

.content.hide { opacity: 0; }

#start {
  position: absolute;
  top: 50%;
  text-align: center;
  width: 100%;
  height: 242px;
  margin-top: -187px;
}
#start .logo {
  background: url(../images/content-dotGame.png) -10px 0px no-repeat;
  width: 150px;
  height: 200px;
  display: inline-block;
}

#game {
  display: none;
  max-width: 100%;
  text-align: right;
  max-height: 100%;
  overflow: hidden;
}
#game .logo {
  background: url(../images/xmasTitle_s.png) 0 0 no-repeat;
  width: 200px;
  height: 90px;
  position: absolute;
  left: 20px;
  top: 20px;
  z-index: 3;
}
#game .bg {
  position: absolute;
  left: 50%;
  top: 50%;
  display: none;
}
#game .bg.active {
  display: block;
}
/*背景圖片位置  top right bottom left */
#game .bg1 {
  margin: -500px 0 0 -710px;
}
#game .bg2 {
  margin: -470px 0 0 -710px;
}
#game .bg3 {
  margin: -470px 0 0 -710px;
}


#nice {
  display: none;
  position: absolute;
  left: 50%;
  top: 65%;
  margin-top: 133px;
  width: 400px;
  margin-left: -200px;
  text-align: center;
  z-index: 6;
  font-size: 26px;
}
#retry {
  display: none;
  position: absolute;
  z-index: 5;
  left: 50%;
  top: 57%;
  margin-top: 160px;
  margin-left: -80px;
  cursor: pointer;
}
#timer {
  position: absolute;
  left: 50%;
  top: 70%;
  /*margin-top: 60px;*/
  width: 120px;
  margin-left: -60px;
  text-align: center;
  color: #fddb5d;}
#progress {
  padding-right: 35px;
}
#progress .active {
  font-size: 35px;
}
/*倒數三二一畫面*/
#countdown {
  display: none;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: rgba(255,255,255,0.7);
  z-index: 10;
  text-align: center;
}
#countdown h1 {
  position: relative;
  top: 50%;
  margin-top: -150px;
  color: #03c46d; }

#finish {
  display: none;
  position: absolute;
  left: 50%; top: 50%;
  width: 600px;
  height: 300px;
  margin: -326px 0 0 -300px;
  text-align: center;
  z-index: 3;
}
#finish p {
  font-size: 17px;
  line-height: 35px;
  text-align: left;
  width: 265px;
  margin: 0 auto;
  position: relative;
}
#finish .score {
  font-size: 40px;
  font-weight: bold;
  position: absolute;
  left: 151px;
  top: 0px;
}
#finish .play-time {
  font-size: 24px;
  font-weight: bold;
  position: absolute;
  left: 151px;
  top: 2px;
}
#finish .next-medal .points {
  font-size: 25px;
  font-weight: bold;
  position: absolute;
  left: 151px;
  top: -2px;
}
#finish #again {
  position: relative;
  z-index: 6;
  cursor: pointer;
  display: inline-block;
  margin-top: 23px;}

/*點的背景圖*/
.dot {
  background:url(../images/img_dot.png)0 0 no-repeat ;
  position: absolute;
  z-index: 4;
  width: 24px;
  height: 24px;
  /*opacity: .7;*/
}
.dot.full {
  background-image:url(../images/img_dot-full.png);
}
.number {
  font-family: 'TeXGyreAdventorBold', arial, sans-serif;
  position: absolute;
  z-index: 3;
  width: 24px;
  text-align: center;
}
#svg {
  height: 100%;
  width: 100%;
  left: 0;
  top: 0;
  position: absolute;
  z-index: 2;
}
.info {
  overflow: hidden;
  position: relative;
}

#retry,
#again { opacity: 0.5;
-webkit-transition: opacity 0.2s ease-out;
   -moz-transition: opacity 0.2s ease-out;
     -o-transition: opacity 0.2s ease-out;
        transition: opacity 0.2s ease-out;
}
#retry:hover,
#again:hover { opacity: 1; }

.preload { position: absolute; left: -1000px; top: 0; height: 0px; overflow: hidden; }



/* ==|== utility classes ======================================== */
.skip-links {   height:0;   overflow:hidden; }
.print-logo {display: none;}
.left {float: left;}
.right {float: right;}
.clearer {clear: both;}
.overflow {overflow:hidden}

/* ==|== non-semantic helper classes ======================================== */
.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; }
.ir br { display: none; }
.hidden { display: none !important; visibility: hidden; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }
