chess-console
Version:
ES6 Module for playing chess
470 lines (390 loc) • 13 kB
CSS
@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 ; }
.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 */