/* src/game/tictactoe.css */
:root {
  --spacing: 1;
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-size: 10px;
}
body {
  background-color: #f5f5f5;
}
button {
  padding: 0 1em;
  margin-left: 1em;
  border-radius: 16px;
  cursor: pointer;
  line-height: 1.4em;
}
.strike-row-1 {
  width: 100%;
  height: 4px;
  top: 15%;
}
.strike-row-2 {
  width: 100%;
  height: 4px;
  top: 48%;
}
.strike-row-3 {
  width: 100%;
  height: 4px;
  top: 83%;
}
.strike-column-1 {
  height: 100%;
  width: 4px;
  left: 15%;
  top: 0:;
}
.strike-column-2 {
  height: 100%;
  width: 4px;
  left: 48%;
}
.strike-column-3 {
  height: 100%;
  width: 4px;
  left: 83%;
}
.strike-diagonal-1 {
  width: 90%;
  height: 4px;
  top: 50%;
  left: 5%;
  transform: skewY(45deg);
}
.strike-diagonal-2 {
  width: 90%;
  height: 4px;
  top: 50%;
  left: 5%;
  transform: skewY(-45deg);
}
.hidden {
  display: none;
}
div.viewport {
  position: absolute;
  width: 100%;
  height: 100%;
}
h2.h2_tictactoe {
  position: relative;
  top: 0.8em;
  left: 1em;
  font-size: 3rem;
  color: darkgrey;
}
div.tictactoe {
  border: 2px solid grey;
  margin: 0;
  max-width: 32em;
  position: relative;
  top: 8.4em;
  left: 10em;
}
div.board-class {
  margin: auto;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: 1fr 1fr 1fr;
  border-bottom: 2px solid grey;
  position: relative;
}
p.square_dim {
  min-height: 3em;
  min-width: 3em;
  font-size: 3rem;
  color: black;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
  margin-bottom: 0;
}
p.border-r-8 {
  border-right: 4px solid grey;
}
p.border-b-8 {
  border-bottom: 4px solid grey;
}
div.absbg {
  position: absolute;
  background-color: #dd6b20;
  z-index: 40;
}
div.winner {
  position: absolute;
  left: 30%;
  margin-top: 0;
  padding: 0 4px;
  line-height: 1.4em;
}
h3.text-4xl {
  font-size: 1.6rem;
  margin-top: 6px;
}
div.button-div {
  display: flex;
  justify-content: center;
  margin: 2em 0 0.4em 0;
  font-size: 1.8rem;
  min-height: 1.4em;
}
div.gameContainer {
  text-align: left;
}
div.moves {
  font-size: 1.4rem;
  padding-left: 1rem;
}
div-messages {
  min-height: 16em;
  position: relative;
}
.flex-container {
  display: flex;
  flex-flow: row wrap;
  text-align: center;
  position: relative;
  min-height: 72em;
}
.article {
  order: 1;
  flex: 1 1;
  min-width: 44em;
  min-height: 56em;
  background: rgb(255, 255, 234);
}
.sidebar {
  order: 2;
  flex: 1 0 50%;
  font-size: 14px;
  background: rgb(240, 223, 223);
}
h3.h3_lastgames {
  position: relative;
  top: 1.2em;
  font-size: 2rem;
  color: #696969;
}
.sidebar p,
.sidebar button {
  font-size: 1em;
  padding: 0.4em 0.6em 0.4em .4em;;
  min-width: 6em;
}
.sidebar p.imlementation {
  position: relative;
  top: 1.6em;
}
div.gameList {
  position: relative;
  top: 3.2em;
}
table.table th,
table.table td {
  font-family: var(--font-family-sans-serif);
  font-size: 1.4em;
}
div.div_t-header pre {
  font-weight: bold;
  font-size: 1.6em;
}
img.checked {
  max-width: 16px;
  max-height: 16px;
  margin-right: 6px;
}

/* src/results/dynatable/dynatable.css */
#gameListZone, div.dyna-table {
  margin: 1em 0;
  overflow: hidden;
  background:
    linear-gradient(
      0.25turn,
      #3f87a6,
      #ebf8e1,
      #f0e0e0);
  padding: 6px;
  max-width: fit-content;
}
table#lastGamesList, table.resizable-table {
  width: calc(100% - 3.2em);
  overflow: auto;
  border-radius: 6px;
  background: #fff;
  float: none;
  margin: 1.6em;

}
.dyna-table table.resizeable-table {
  width: 100%;
  overflow: auto;
  display: grid;
  border-radius: 6px;
  background: #fff;
  float: none;
}
.dyna-table table.resizeable-table thead,
.dyna-table table.resizeable-table tbody,
.dyna-table table.resizeable-table tr {
  display: contents;
}

table#lastGamesList th, div.dyna-table > table.resizeable-table > thead > tr > th,
table#lastGamesList td, div.dyna-table > table.resizeable-table > tbody > tr > td {
  text-align: center;
  padding: 0.75rem;
  vertical-align: top;
  font-family: var(--font-family-sans-serif);
  border-top: 1px solid #ccc;
}

.dyna-table table > thead > tr > th > span {
  font-weight: bold;
  font-size: 1.6em;
}
.dyna-table table.resizeable-table > tbody > tr > td > span {
  font-size: 1.4em;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: block;
}
.dyna-table table.resizeable-table tr th {
  padding-bottom: 1rem;
  position: relative;
}
.dyna-table table.resizeable-table > tbody > tr.even > td {
  background-color: #f0f6f6;
}
.dyna-table table.resizeable-table > tbody > tr.odd > td {
  background-color: rgba(0, 0, 0, 0.05);
}
.dyna-table table.resizeable-table > tbody > tr.rowSelected > td {
  background: #e4d0d0 !important;
}
.dyna-table table.resizeable-table > tbody > tr:hover > td {
  background: #f9f9d9;
}

 table > thead > tr > th > span {
  font-weight: bold;
  font-size: 1.6em;
}
table > tbody > tr > td > span {
  font-size: 1.4em;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: block;
}
table tr th {
  padding-bottom: 1rem;
}
table > tbody > tr.even > td {
  background-color: #f0f6f6;
}
table > tbody > tr.odd > td {
  background-color: rgba(0, 0, 0, 0.05);
}
table > tbody > tr.rowSelected > td {
  background: #e4d0d0 !important;
}
table > tbody > tr:hover > td {
  background: #f9f9d9;
}
.resize-handle {
  display: block;
  position: absolute;
  cursor: col-resize;
  width: 7px;
  right: 0;
  top: 0;
  z-index: 1;
  border-right: 2px solid transparent;
  height: 100%;
  border-color: #333;
  width: 2px;
}
.resize-handle:hover {
  border-color: #ccc;
}
.resize-handle.active {
  border-color: #517ea5;
}
