/* ── Base / structural ──────────────────────────────────────────────────── */

.cm-chessboard {
  border-radius: 8px;
  overflow: hidden;

  /* Default theme variables (gray-blue) */
  --sq-white: #DEE9EE;
  --sq-black: #889CA8;
  --border-color: #889CA8;
  --border-frame: #DEE9EE;
  --border-inner: #889CA8;
  --coord: rgb(125, 144, 155);
  --coord-on-black: rgb(225, 235, 239);
  --coord-on-white: rgb(125, 144, 155);

  /* Analysis arrow colors */
  --arrow-success: green;
  --arrow-success-opacity: 0.5;
  --arrow-danger: red;
  --arrow-danger-opacity: 0.5;
  --arrow-warning: orange;
  --arrow-warning-opacity: 0.6;
  --arrow-info: blue;
  --arrow-info-opacity: 0.4;
  --arrow-secondary: #666;
  --arrow-secondary-opacity: 0.5;

  /* Analysis line arrow colors (gradient: cyan → blue) */
  --arrow-line1: #00FFDD;
  --arrow-line1-opacity: 0.8;
  --arrow-line2: #10CBEC;
  --arrow-line2-opacity: 0.5;
  --arrow-line3: #2196FB;
  --arrow-line3-opacity: 0.35;
  --arrow-line4: #1976D2;
  --arrow-line4-opacity: 0.25;
  --arrow-line5: #1565C0;
  --arrow-line5-opacity: 0.2;

  /* Drawing annotation brush colors */
  --brush-green: #15781B;
  --brush-red: #882020;
  --brush-blue: #003088;
  --brush-yellow: #f5c000;
  --brush-purple: #9b30ff;
  --brush-orange: #e6590a;
  --brush-cyan: #0097a7;
  --brush-pink: #ee2080;
}

.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-accessibility.visually-hidden {
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* ── Theme transition ─────────────────────────────────────────────────── */

.cm-chessboard.theme-transition .board .square,
.cm-chessboard.theme-transition .board .border,
.cm-chessboard.theme-transition .board .border-inner,
.cm-chessboard.theme-transition .coordinates .coordinate {
  transition: fill var(--theme-transition-duration, 300ms) ease;
}

/* ── Squares ───────────────────────────────────────────────────────────── */

.cm-chessboard .board .square.white {
  fill: var(--sq-white);
}
.cm-chessboard .board .square.black {
  fill: var(--sq-black);
}

/* ── Borders ───────────────────────────────────────────────────────────── */

.cm-chessboard.border-type-thin .board .border {
  stroke: var(--border-color);
  stroke-width: 0.7%;
  fill: var(--border-color);
}
.cm-chessboard.border-type-none .board .border {
  stroke: var(--border-color);
  stroke-width: 0;
  fill: var(--border-color);
}
.cm-chessboard.border-type-frame .board .border {
  fill: var(--border-frame);
  stroke: none;
}
.cm-chessboard.border-type-frame .board .border-inner {
  fill: var(--border-inner);
  stroke: var(--border-inner);
  stroke-width: 0.7%;
}

/* ── Coordinates ───────────────────────────────────────────────────────── */

.cm-chessboard .coordinates {
  pointer-events: none;
  user-select: none;
}
.cm-chessboard .coordinates .coordinate {
  fill: var(--coord);
  font-size: 7px;
  cursor: default;
}
.cm-chessboard .coordinates .coordinate.black {
  fill: var(--coord-on-black);
}
.cm-chessboard .coordinates .coordinate.white {
  fill: var(--coord-on-white);
}

/* ── Theme: default (gray-blue) ────────────────────────────────────────── */
/* Variables already set on .cm-chessboard root — this is the default */

/* ── Theme: default-contrast ───────────────────────────────────────────── */

.cm-chessboard.default-contrast {
  --sq-white: #ecdab9;
  --sq-black: #c5a076;
  --border-color: #c5a076;
  --border-frame: #ecdab9;
  --border-inner: #c5a076;
  --coord: rgb(181, 147, 109);
  --coord-on-black: #333;
  --coord-on-white: #333;
}

/* ── Theme: green ──────────────────────────────────────────────────────── */

.cm-chessboard.green {
  --sq-white: #E0DDCC;
  --sq-black: #4c946a;
  --border-color: #4c946a;
  --border-frame: #E0DDCC;
  --border-inner: #4c946a;
  --coord: rgb(70, 136, 98);
  --coord-on-black: rgb(226, 224, 208);
  --coord-on-white: rgb(70, 136, 98);
}

/* ── Theme: blue ───────────────────────────────────────────────────────── */

.cm-chessboard.blue {
  --sq-white: #d8ecfb;
  --sq-black: #86afcf;
  --border-color: #86afcf;
  --border-frame: #d8ecfb;
  --border-inner: #86afcf;
  --coord: rgb(123, 161, 190);
  --coord-on-black: rgb(219, 238, 251);
  --coord-on-white: rgb(123, 161, 190);
}

/* ── Theme: chess-club ─────────────────────────────────────────────────── */

.cm-chessboard.chess-club {
  --sq-white: #E6D3B1;
  --sq-black: #AF6B3F;
  --border-color: #692e2b;
  --border-frame: #692e2b;
  --border-inner: #AF6B3F;
  --coord: #E6D3B1;
  --coord-on-black: #E6D3B1;
  --coord-on-white: #AF6B3F;
}

/* ── Theme: chessboard-js (classical wood) ─────────────────────────────── */

.cm-chessboard.chessboard-js {
  --sq-white: #f0d9b5;
  --sq-black: #b58863;
  --border-color: #404040;
  --border-frame: #f0d9b5;
  --border-inner: #b58863;
  --coord: #404040;
  --coord-on-black: #f0d9b5;
  --coord-on-white: #b58863;
}

/* ── Theme: black-and-white ────────────────────────────────────────────── */

.cm-chessboard.black-and-white {
  --sq-white: #ffffff;
  --sq-black: #9c9c9c;
  --border-color: #9c9c9c;
  --border-frame: #ffffff;
  --border-inner: #9c9c9c;
  --coord: rgb(144, 144, 144);
  --coord-on-black: white;
  --coord-on-white: rgb(144, 144, 144);
}

/* ── Theme: warm-gray ─────────────────────────────────────────────────── */

.cm-chessboard.warm-gray {
  --sq-white: #E0DCD6;
  --sq-black: #A09A92;
  --border-color: #A09A92;
  --border-frame: #E0DCD6;
  --border-inner: #A09A92;
  --coord: rgb(148, 142, 134);
  --coord-on-black: rgb(220, 216, 210);
  --coord-on-white: rgb(148, 142, 134);
}

/* ── Theme: bright-green ──────────────────────────────────────────────── */

.cm-chessboard.bright-green {
  --sq-white: #EEFFD8;
  --sq-black: #86C646;
  --border-color: #86C646;
  --border-frame: #EEFFD8;
  --border-inner: #86C646;
  --coord: rgb(110, 170, 56);
  --coord-on-black: rgb(230, 255, 210);
  --coord-on-white: rgb(110, 170, 56);
}

/* ── Theme: teal ──────────────────────────────────────────────────────── */

.cm-chessboard.teal {
  --sq-white: #D6F0EC;
  --sq-black: #5BB0A4;
  --border-color: #5BB0A4;
  --border-frame: #D6F0EC;
  --border-inner: #5BB0A4;
  --coord: rgb(78, 152, 142);
  --coord-on-black: rgb(210, 240, 234);
  --coord-on-white: rgb(78, 152, 142);
}

/* ── Theme: teal-dark ─────────────────────────────────────────────────── */

.cm-chessboard.teal-dark {
  --sq-white: #C8E4DE;
  --sq-black: #3D9E8E;
  --border-color: #3D9E8E;
  --border-frame: #C8E4DE;
  --border-inner: #3D9E8E;
  --coord: rgb(52, 138, 124);
  --coord-on-black: rgb(196, 224, 218);
  --coord-on-white: rgb(52, 138, 124);
}

/* ── Theme: coral ─────────────────────────────────────────────────────── */

.cm-chessboard.coral {
  --sq-white: #F4DDD0;
  --sq-black: #CF8E70;
  --border-color: #CF8E70;
  --border-frame: #F4DDD0;
  --border-inner: #CF8E70;
  --coord: rgb(186, 124, 96);
  --coord-on-black: rgb(240, 218, 206);
  --coord-on-white: rgb(186, 124, 96);
}

/* ── Theme: wine ──────────────────────────────────────────────────────── */

.cm-chessboard.wine {
  --sq-white: #ECD4D8;
  --sq-black: #AF5060;
  --border-color: #AF5060;
  --border-frame: #ECD4D8;
  --border-inner: #AF5060;
  --coord: rgb(156, 68, 82);
  --coord-on-black: rgb(232, 208, 214);
  --coord-on-white: rgb(156, 68, 82);
}

/* ── Theme: lavender ──────────────────────────────────────────────────── */

.cm-chessboard.lavender {
  --sq-white: #D8DCF5;
  --sq-black: #8088C0;
  --border-color: #8088C0;
  --border-frame: #D8DCF5;
  --border-inner: #8088C0;
  --coord: rgb(112, 118, 170);
  --coord-on-black: rgb(214, 218, 242);
  --coord-on-white: rgb(112, 118, 170);
}

/* ── Theme: dark-wood ─────────────────────────────────────────────────── */

.cm-chessboard.dark-wood {
  --sq-white: #D8C0A0;
  --sq-black: #6C4828;
  --border-color: #6C4828;
  --border-frame: #D8C0A0;
  --border-inner: #6C4828;
  --coord: rgb(92, 60, 32);
  --coord-on-black: rgb(210, 188, 156);
  --coord-on-white: rgb(92, 60, 32);
}

/* ── Theme: walnut ────────────────────────────────────────────────────── */

.cm-chessboard.walnut {
  --sq-white: #DCC8A8;
  --sq-black: #8C6838;
  --border-color: #8C6838;
  --border-frame: #DCC8A8;
  --border-inner: #8C6838;
  --coord: rgb(124, 90, 46);
  --coord-on-black: rgb(216, 196, 164);
  --coord-on-white: rgb(124, 90, 46);
}

/* ── Theme: red-orange ────────────────────────────────────────────────── */

.cm-chessboard.red-orange {
  --sq-white: #F5D0C0;
  --sq-black: #C85040;
  --border-color: #C85040;
  --border-frame: #F5D0C0;
  --border-inner: #C85040;
  --coord: rgb(176, 66, 54);
  --coord-on-black: rgb(240, 204, 188);
  --coord-on-white: rgb(176, 66, 54);
}

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