@charset "UTF-8";
html {
  margin: 0 15px;
  font-size: 12px;
  font-family: "Hiragino Maru Gothic Pro", Verdana, sans-serif;
  -webkit-text-size-adjust: 100%;
}
body {
  margin: auto;
  margin-bottom: 40px;
  max-width: 900px;
}
input {
  font-size: 100%;
}
h1 {
  font-size: 28px;
  border-bottom: solid 2px #ccc;
  margin-bottom: 0;
}
h1 img {
  width: 32px;
  vertical-align: text-bottom;
}
.version {
  font-size: 16px;
  font-family: Georgia, serif;
  text-align: right;
  margin-top: -1.2em;
}
#menu {
  font-size: 14px;
  margin: 0.5em 0;
  padding: 0;
  white-space: nowrap;
  overflow: auto;
}
#menu li {
  display: inline-block;
  margin-left: 1em;
}
#menu li a {
  color: inherit;
  text-decoration: none;
}
#loading {
  padding: 1em 2em;
}
#board {
  display: none;
  background-color: #c0c0c0;
  border: outset 5px;
}
#board tr td {
  border: inset 1px;
  padding: 4px;
  position: relative;
}
#board .block {
  margin-bottom: 6px;
}
#board .block div {
  line-height: 0;
  white-space: nowrap;
}
#board .block div div {
  display: inline-block;
  box-sizing: border-box;
  width: 16px;
  height: 16px;
  border: solid 1px;
  border-color: #ddd #666 #666 #ddd;
  background-position: -1px -1px;
}
#board .block div div.mark1 {
  background-image: url("mark1.gif");
}
#board .block div div.mark2 {
  background-image: url("mark2.gif");
}
#board .block div div.open {
  background-color: #808080;
  border: solid 1px;
  border-color: #666 #ddd #ddd #666;
}
#board .block div div.open.OK {
  background-image: url("OK.gif");
}
#board .block div div.open.NG {
  background-image: url("NG.gif");
}
#board .block div div.open.n1 {
  background-image: url("1.gif");
}
#board .block div div.open.n2 {
  background-image: url("2.gif");
}
#board .block div div.open.n3 {
  background-image: url("3.gif");
}
#board .block div div.open.n4 {
  background-image: url("4.gif");
}
#board .block div div.open.n5 {
  background-image: url("5.gif");
}
#board .block div div.open.n6 {
  background-image: url("6.gif");
}
#board .block div div.open.n7 {
  background-image: url("7.gif");
}
#board .block div div.open.n8 {
  background-image: url("8.gif");
}
#board .status {
  font-size: 12px;
  background: #fff;
  padding: 1px 1em;
  border: inset 2px;
}
#board .dialog {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.3);
}
#board .dialog form {
  margin: 20% auto;
  font-size: 12px;
  padding: 8px;
  display: table;
  background: #c0c0c0;
  border: ridge 1px;
}
#board .dialog form input {
  width: 10em;
}
#board .dialog form input::placeholder {
  color: #999;
  opacity: 1;
}
#pref,
#rule {
  display: none;
  margin-top: 1em;
  max-width: 600px;
  border: solid 2px #c0c0c0;
  padding: 1em;
}
#pref h2,
#rule h2 {
  margin: 0;
  font-size: 120%;
  border-bottom: solid 1px #c0c0c0;
}
#pref h3,
#rule h3 {
  margin: 1em 0 0 0;
  font-size: 100%;
  border-bottom: dotted 1px #c0c0c0;
}
#pref p img,
#rule p img,
#pref dd img,
#rule dd img {
  height: 1.4em;
  vertical-align: top;
}
#pref ul {
  padding-left: 2em;
}
#pref ul li {
  list-style: none;
  padding-left: 0;
}
#pref ul li input[name="x"],
#pref ul li input[name="y"] {
  width: 1.5em;
}
#pref ul li input[name="n"] {
  width: 2em;
}
#pref .error {
  display: none;
  color: #f00;
}
#pref .button {
  text-align: right;
}
#score {
  display: none;
  margin-top: 1em;
}
#score table {
  min-width: 420px;
  font-size: 14px;
  border-collapse: collapse;
}
#score table tr.new {
  color: #f00;
}
#score table th,
#score table td {
  padding: 0.5em 1em;
}
#score table th {
  border-bottom: solid 2px #c0c0c0;
}
#score table td {
  border-bottom: dotted 1px #c0c0c0;
}
#score table td.rank {
  text-align: right;
}
#score table td.name {
  width: 10em;
  max-width: 10em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media screen and (max-width: 450px) {
  #score table {
    font-size: 12px;
    width: 100%;
    min-width: auto;
  }
  #score table th,
  #score table td {
    padding: 0.5em 0.5em;
  }
}
