@charset "UTF-8";
.buttons-grid {
  display: grid;
  justify-content: left;
  grid-template-columns: repeat(auto-fill, 3rem);
  gap: 0.5rem; }
  .buttons-grid .btn-link.text-black:active, .buttons-grid .btn-link.text-black:focus {
    box-shadow: none !important; }
  .buttons-grid .btn[disabled] {
    opacity: 0.4; }

.chess-console .fa-figure-white {
  color: white;
  text-shadow: 1px 1px 1px black, 1px -1px 1px black, -1px 1px 1px black, -1px -1px 1px black; }

.chess-console .fa-figure-black {
  color: black;
  text-shadow: 1px 1px 1px white, 1px -1px 1px white, -1px 1px 1px white, -1px -1px 1px white;
  transform: scale(1.14); }

.chess-console .chess-console-right, .chess-console .chess-console-left {
  margin-top: 20px; }

.chess-console .chess-console-board .chessboard {
  width: 100%; }

.chess-console .chess-console-board .player {
  font-weight: bold;
  font-size: 120%; }
  .chess-console .chess-console-board .player.to-move:after {
    color: #333;
    margin-left: 8px;
    content: "■"; }

.chess-console .chess-console-board .clock {
  font-family: 'DSDIGI', sans-serif;
  font-size: 150%;
  line-height: 0.99; }

.chess-console .chess-console-left .history {
  max-height: 284px;
  max-width: 210px;
  overflow-y: auto;
  overflow-x: visible;
  margin-bottom: 2rem;
  width: calc(100% + 8px); }
  .chess-console .chess-console-left .history table {
    width: 100%; }
    .chess-console .chess-console-left .history table .num {
      width: 18%; }
    .chess-console .chess-console-left .history table .ply {
      width: 41%; }
      .chess-console .chess-console-left .history table .ply i {
        pointer-events: none; }
      .chess-console .chess-console-left .history table .ply.active {
        font-weight: bold; }
  .chess-console .chess-console-left .history.clickable .ply {
    cursor: pointer; }

.chess-console .chess-console-left .captured-pieces {
  margin-bottom: 1rem;
  font-size: 120%; }
  .chess-console .chess-console-left .captured-pieces > div:first-of-type {
    margin-bottom: 0.5rem; }
  .chess-console .chess-console-left .captured-pieces .piece * {
    pointer-events: none; }

.chess-console .chess-console-right .buttons-grid .autoplay .fa-play {
  color: #198754; }

.chess-console .chess-console-right .buttons-grid .autoplay .fa-stop {
  color: #fd7e14; }

.chess-console .chess-console-right .buttons-grid .btn-active {
  color: #198754; }

.chess-console .chess-console-right .game-status {
  font-weight: bold;
  margin-bottom: 1rem; }

.chess-console .chess-console-right .last-error {
  color: #dc3545;
  margin-bottom: 1rem; }

.chess-console .chess-console-right .move-input {
  margin-bottom: 1rem; }
  .chess-console .chess-console-right .move-input .first-move {
    color: #343a40;
    font-size: 280%;
    width: 100%;
    overflow: hidden; }
  .chess-console .chess-console-right .move-input .move-input-controls {
    width: 100%; }
    .chess-console .chess-console-right .move-input .move-input-controls button {
      float: left;
      margin-right: 0.5rem;
      margin-bottom: 0.5rem; }

.modal svg.piece {
  width: 40px;
  height: 40px;
  cursor: pointer; }
  .modal svg.piece:hover {
    background-color: #ccc; }

button.close {
  cursor: pointer; }

.cm-chessboard .board.input-enabled .square {
  cursor: pointer; }

.cm-chessboard .coordinates, .cm-chessboard .markers-layer, .cm-chessboard .pieces-layer, .cm-chessboard .markers-top-layer {
  pointer-events: none; }

.cm-chessboard-content .list-inline {
  padding-left: 0;
  list-style: none; }

.cm-chessboard-content .list-inline-item {
  display: inline-block; }
  .cm-chessboard-content .list-inline-item:not(:last-child) {
    margin-right: 1rem; }

.cm-chessboard-content .list-inline {
  padding-left: 0;
  list-style: none; }

.cm-chessboard-content .list-inline-item {
  display: inline-block; }
  .cm-chessboard-content .list-inline-item:not(:last-child) {
    margin-right: 1rem; }

.cm-chessboard-accessibility.visually-hidden {
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0; }

.cm-chessboard.default .board .square.white {
  fill: #ecdab9; }

.cm-chessboard.default .board .square.black {
  fill: #c5a076; }

.cm-chessboard.default.border-type-thin .board .border {
  stroke: #c5a076;
  stroke-width: 0.7%;
  fill: #c5a076; }

.cm-chessboard.default.border-type-none .board .border {
  stroke: #c5a076;
  stroke-width: 0;
  fill: #c5a076; }

.cm-chessboard.default.border-type-frame .board .border {
  fill: #ecdab9;
  stroke: none; }

.cm-chessboard.default.border-type-frame .board .border-inner {
  fill: #c5a076;
  stroke: #c5a076;
  stroke-width: 0.7%; }

.cm-chessboard.default .coordinates {
  pointer-events: none;
  user-select: none; }
  .cm-chessboard.default .coordinates .coordinate {
    fill: #b5936d;
    font-size: 7px;
    cursor: default; }
    .cm-chessboard.default .coordinates .coordinate.black {
      fill: #eeddbf; }
    .cm-chessboard.default .coordinates .coordinate.white {
      fill: #b5936d; }

.cm-chessboard.default-contrast .board .square.white {
  fill: #ecdab9; }

.cm-chessboard.default-contrast .board .square.black {
  fill: #c5a076; }

.cm-chessboard.default-contrast.border-type-thin .board .border {
  stroke: #c5a076;
  stroke-width: 0.7%;
  fill: #c5a076; }

.cm-chessboard.default-contrast.border-type-none .board .border {
  stroke: #c5a076;
  stroke-width: 0;
  fill: #c5a076; }

.cm-chessboard.default-contrast.border-type-frame .board .border {
  fill: #ecdab9;
  stroke: none; }

.cm-chessboard.default-contrast.border-type-frame .board .border-inner {
  fill: #c5a076;
  stroke: #c5a076;
  stroke-width: 0.7%; }

.cm-chessboard.default-contrast .coordinates {
  pointer-events: none;
  user-select: none; }
  .cm-chessboard.default-contrast .coordinates .coordinate {
    fill: #b5936d;
    font-size: 7px;
    cursor: default; }
    .cm-chessboard.default-contrast .coordinates .coordinate.black {
      fill: #333; }
    .cm-chessboard.default-contrast .coordinates .coordinate.white {
      fill: #333; }

.cm-chessboard.green .board .square.white {
  fill: #E0DDCC; }

.cm-chessboard.green .board .square.black {
  fill: #4c946a; }

.cm-chessboard.green.border-type-thin .board .border {
  stroke: #4c946a;
  stroke-width: 0.7%;
  fill: #4c946a; }

.cm-chessboard.green.border-type-none .board .border {
  stroke: #4c946a;
  stroke-width: 0;
  fill: #4c946a; }

.cm-chessboard.green.border-type-frame .board .border {
  fill: #E0DDCC;
  stroke: none; }

.cm-chessboard.green.border-type-frame .board .border-inner {
  fill: #4c946a;
  stroke: #4c946a;
  stroke-width: 0.7%; }

.cm-chessboard.green .coordinates {
  pointer-events: none;
  user-select: none; }
  .cm-chessboard.green .coordinates .coordinate {
    fill: #468862;
    font-size: 7px;
    cursor: default; }
    .cm-chessboard.green .coordinates .coordinate.black {
      fill: #e2e0d0; }
    .cm-chessboard.green .coordinates .coordinate.white {
      fill: #468862; }

.cm-chessboard.blue .board .square.white {
  fill: #d8ecfb; }

.cm-chessboard.blue .board .square.black {
  fill: #86afcf; }

.cm-chessboard.blue.border-type-thin .board .border {
  stroke: #86afcf;
  stroke-width: 0.7%;
  fill: #86afcf; }

.cm-chessboard.blue.border-type-none .board .border {
  stroke: #86afcf;
  stroke-width: 0;
  fill: #86afcf; }

.cm-chessboard.blue.border-type-frame .board .border {
  fill: #d8ecfb;
  stroke: none; }

.cm-chessboard.blue.border-type-frame .board .border-inner {
  fill: #86afcf;
  stroke: #86afcf;
  stroke-width: 0.7%; }

.cm-chessboard.blue .coordinates {
  pointer-events: none;
  user-select: none; }
  .cm-chessboard.blue .coordinates .coordinate {
    fill: #7ba1be;
    font-size: 7px;
    cursor: default; }
    .cm-chessboard.blue .coordinates .coordinate.black {
      fill: #dbeefb; }
    .cm-chessboard.blue .coordinates .coordinate.white {
      fill: #7ba1be; }

.cm-chessboard.chess-club .board .square.white {
  fill: #E6D3B1; }

.cm-chessboard.chess-club .board .square.black {
  fill: #AF6B3F; }

.cm-chessboard.chess-club.border-type-thin .board .border {
  stroke: #692e2b;
  stroke-width: 0.7%;
  fill: #AF6B3F; }

.cm-chessboard.chess-club.border-type-none .board .border {
  stroke: #692e2b;
  stroke-width: 0;
  fill: #AF6B3F; }

.cm-chessboard.chess-club.border-type-frame .board .border {
  fill: #692e2b;
  stroke: none; }

.cm-chessboard.chess-club.border-type-frame .board .border-inner {
  fill: #AF6B3F;
  stroke: #692e2b;
  stroke-width: 0.7%; }

.cm-chessboard.chess-club .coordinates {
  pointer-events: none;
  user-select: none; }
  .cm-chessboard.chess-club .coordinates .coordinate {
    fill: #E6D3B1;
    font-size: 7px;
    cursor: default; }
    .cm-chessboard.chess-club .coordinates .coordinate.black {
      fill: #E6D3B1; }
    .cm-chessboard.chess-club .coordinates .coordinate.white {
      fill: #AF6B3F; }

.cm-chessboard.chessboard-js .board .square.white {
  fill: #f0d9b5; }

.cm-chessboard.chessboard-js .board .square.black {
  fill: #b58863; }

.cm-chessboard.chessboard-js.border-type-thin .board .border {
  stroke: #404040;
  stroke-width: 0.7%;
  fill: #b58863; }

.cm-chessboard.chessboard-js.border-type-none .board .border {
  stroke: #404040;
  stroke-width: 0;
  fill: #b58863; }

.cm-chessboard.chessboard-js.border-type-frame .board .border {
  fill: #f0d9b5;
  stroke: none; }

.cm-chessboard.chessboard-js.border-type-frame .board .border-inner {
  fill: #b58863;
  stroke: #404040;
  stroke-width: 0.7%; }

.cm-chessboard.chessboard-js .coordinates {
  pointer-events: none;
  user-select: none; }
  .cm-chessboard.chessboard-js .coordinates .coordinate {
    fill: #404040;
    font-size: 7px;
    cursor: default; }
    .cm-chessboard.chessboard-js .coordinates .coordinate.black {
      fill: #f0d9b5; }
    .cm-chessboard.chessboard-js .coordinates .coordinate.white {
      fill: #b58863; }

.cm-chessboard.black-and-white .board .square.white {
  fill: #ffffff; }

.cm-chessboard.black-and-white .board .square.black {
  fill: #9c9c9c; }

.cm-chessboard.black-and-white.border-type-thin .board .border {
  stroke: #9c9c9c;
  stroke-width: 0.7%;
  fill: #9c9c9c; }

.cm-chessboard.black-and-white.border-type-none .board .border {
  stroke: #9c9c9c;
  stroke-width: 0;
  fill: #9c9c9c; }

.cm-chessboard.black-and-white.border-type-frame .board .border {
  fill: #ffffff;
  stroke: none; }

.cm-chessboard.black-and-white.border-type-frame .board .border-inner {
  fill: #9c9c9c;
  stroke: #9c9c9c;
  stroke-width: 0.7%; }

.cm-chessboard.black-and-white .coordinates {
  pointer-events: none;
  user-select: none; }
  .cm-chessboard.black-and-white .coordinates .coordinate {
    fill: #909090;
    font-size: 7px;
    cursor: default; }
    .cm-chessboard.black-and-white .coordinates .coordinate.black {
      fill: white; }
    .cm-chessboard.black-and-white .coordinates .coordinate.white {
      fill: #909090; }

svg.cm-chessboard .promotion-dialog-group rect, svg.cm-chessboard .promotion-dialog-group g[data-piece] {
  animation: fade-in 0.25s ease-in; }

svg.cm-chessboard .promotion-dialog-group .promotion-dialog {
  fill: white;
  fill-opacity: 0.7;
  stroke: rgba(0, 0, 0, 0.4); }

svg.cm-chessboard .promotion-dialog-group .promotion-dialog-button {
  fill: transparent;
  cursor: pointer; }
  svg.cm-chessboard .promotion-dialog-group .promotion-dialog-button:hover {
    fill: rgba(0, 0, 0, 0.2); }

svg.cm-chessboard .promotion-dialog-group .piece {
  pointer-events: none; }

@keyframes fade-in {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

.cm-chessboard .markers {
  pointer-events: none; }
  .cm-chessboard .markers .marker.marker-frame {
    stroke: #000000;
    stroke-width: 1.8px;
    opacity: 0.4; }
  .cm-chessboard .markers .marker.marker-frame-primary {
    stroke: #0009bd;
    stroke-width: 1.8px;
    opacity: 0.4; }
  .cm-chessboard .markers .marker.marker-frame-danger {
    stroke: #aa0000;
    stroke-width: 1.8px;
    opacity: 0.4; }
  .cm-chessboard .markers .marker.marker-circle {
    stroke: #000000;
    stroke-width: 2.5px;
    opacity: 0.2; }
  .cm-chessboard .markers .marker.marker-circle-primary {
    stroke: #0009bd;
    stroke-width: 2.5px;
    opacity: 0.4; }
  .cm-chessboard .markers .marker.marker-circle-danger {
    stroke: #aa0000;
    stroke-width: 2.5px;
    opacity: 0.5; }
  .cm-chessboard .markers .marker.marker-square {
    fill: yellow;
    opacity: 0.3; }
  .cm-chessboard .markers .marker.marker-square-danger {
    fill: #aa0000;
    opacity: 0.2; }
  .cm-chessboard .markers .marker.marker-square-primary {
    fill: #0009bd;
    opacity: 0.11; }
  .cm-chessboard .markers .marker.marker-dot {
    fill: black;
    opacity: 0.25; }
  .cm-chessboard .markers .marker.marker-bevel {
    fill: black;
    opacity: 0.25; }

html body .container-fluid {
  max-width: 1200px; }

/*# sourceMappingURL=screen.css.map */