.cg-wrap{box-sizing:content-box;display:block;position:relative}cg-container{width:100%;height:100%;display:block;position:absolute;top:0}cg-board{-webkit-user-select:none;user-select:none;background-size:cover;width:100%;height:100%;line-height:0;position:absolute;top:0;left:0}.cg-wrap.manipulable cg-board{cursor:pointer}cg-board square{pointer-events:none;width:12.5%;height:12.5%;position:absolute;top:0;left:0}cg-board square.move-dest{pointer-events:auto}cg-board square.last-move{will-change:transform}.cg-wrap piece{z-index:2;will-change:transform;pointer-events:none;background-size:cover;width:12.5%;height:12.5%;position:absolute;top:0;left:0}cg-board piece.dragging{cursor:move;z-index:11!important}piece.anim{z-index:8}piece.fading{z-index:1;opacity:.5}.cg-wrap piece.ghost{opacity:.3}.cg-wrap piece svg{pointer-events:none;z-index:2;opacity:.6;width:100%;height:100%;position:relative;top:0;left:0;overflow:hidden}.cg-wrap cg-auto-pieces,.cg-wrap .cg-shapes,.cg-wrap .cg-custom-svgs,.cg-wrap .cg-shapes-below,.cg-wrap .cg-custom-below{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0;overflow:visible}.cg-wrap cg-auto-pieces{z-index:2}.cg-wrap cg-auto-pieces piece{opacity:.3}.cg-wrap .cg-shapes{opacity:.6;z-index:2;overflow:hidden}.cg-wrap .cg-shapes-below{z-index:1;overflow:hidden}.cg-wrap .cg-custom-below{z-index:1}.cg-wrap .cg-custom-svgs{z-index:9}.cg-wrap .cg-custom-svgs svg,.cg-wrap .cg-custom-below svg{overflow:visible}.cg-wrap coords{pointer-events:none;opacity:.8;font-family:sans-serif;font-size:9px;display:flex;position:absolute}.cg-wrap coords.ranks{flex-flow:column-reverse;width:12px;height:100%;top:-20px;left:4px}.cg-wrap coords.ranks.black{flex-flow:column}.cg-wrap coords.ranks.left{align-items:flex-end;left:-15px}.cg-wrap coords.files{text-transform:uppercase;text-align:center;flex-flow:row;width:100%;height:16px;bottom:-4px;left:24px}.cg-wrap coords.files.black{flex-flow:row-reverse}.cg-wrap coords coord{flex:auto}.cg-wrap coords.ranks coord{transform:translateY(39%)}.cg-wrap coords.squares{text-transform:uppercase;text-align:right;flex-flow:column-reverse;width:12.5%;height:100%;bottom:0;left:0}.cg-wrap coords.squares.black{flex-flow:column}.cg-wrap coords.squares.left{text-align:left}.cg-wrap coords.squares coord{padding:6% 4%}.cg-wrap coords.squares.rank2{transform:translate(100%)}.cg-wrap coords.squares.rank3{transform:translate(200%)}.cg-wrap coords.squares.rank4{transform:translate(300%)}.cg-wrap coords.squares.rank5{transform:translate(400%)}.cg-wrap coords.squares.rank6{transform:translate(500%)}.cg-wrap coords.squares.rank7{transform:translate(600%)}.cg-wrap coords.squares.rank8{transform:translate(700%)}cg-board{background-color:#dee3e6;background-image:url(/board/blue2.jpg);box-shadow:0 0 12px #0009}.cg-wrap piece.pawn.white{background-image:url(/piece/staunty/wP.svg)}.cg-wrap piece.bishop.white{background-image:url(/piece/staunty/wB.svg)}.cg-wrap piece.knight.white{background-image:url(/piece/staunty/wN.svg)}.cg-wrap piece.rook.white{background-image:url(/piece/staunty/wR.svg)}.cg-wrap piece.queen.white{background-image:url(/piece/staunty/wQ.svg)}.cg-wrap piece.king.white{background-image:url(/piece/staunty/wK.svg)}.cg-wrap piece.pawn.black{background-image:url(/piece/staunty/bP.svg)}.cg-wrap piece.bishop.black{background-image:url(/piece/staunty/bB.svg)}.cg-wrap piece.knight.black{background-image:url(/piece/staunty/bN.svg)}.cg-wrap piece.rook.black{background-image:url(/piece/staunty/bR.svg)}.cg-wrap piece.queen.black{background-image:url(/piece/staunty/bQ.svg)}.cg-wrap piece.king.black{background-image:url(/piece/staunty/bK.svg)}*{box-sizing:border-box}html,body{height:100%}body{color:#eee;background:#1c1c1e;place-items:center;margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;display:grid}main{--board-size:min(72vmin, 540px);flex-direction:column;align-items:center;gap:18px;padding:24px;display:flex}.fen-panel{width:var(--board-size);flex-direction:column;align-items:center;gap:6px;max-width:100%;display:flex}.fen-row{gap:8px;width:100%;display:flex}#fen-input{color:#eee;background:#2a2a2d;border:1px solid #3a3a3f;border-radius:8px;outline:none;flex:1;min-width:0;padding:10px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;transition:border-color .15s,box-shadow .15s}#fen-input:focus{border-color:#97b2c7;box-shadow:0 0 0 3px #97b2c740}#fen-input.invalid{border-color:#e05656;box-shadow:0 0 0 3px #e0565640}.invalid-hint{color:#e05656;margin:0;font-size:12px}#lichess-btn{color:#e8e8ea;cursor:pointer;background:#2a2a2d;border:1px solid #3a3a3f;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:8px;transition:background-color .15s;display:inline-flex}#lichess-btn svg{width:22px;height:22px;display:block}#lichess-btn:hover:not(:disabled){background-color:#333338}#lichess-btn:disabled{color:#8a8a90;cursor:not-allowed;background:#232326;border-color:#2e2e32}.board-area{flex-direction:column;align-items:center;gap:18px;display:flex}.board-frame{grid-area:1/1;grid-template-columns:1.4rem var(--board-size) 1.4rem;grid-template-rows:1.4rem var(--board-size) 1.4rem;background:#333338;border:1px solid #4a4a50;border-radius:14px;gap:8px;padding:14px;display:grid}.coords-ranks{flex-direction:column;display:flex}.coords-ranks#coords-ranks-left{grid-area:2/1}.coords-ranks#coords-ranks-right{grid-area:2/3}.coords-ranks span{color:#b9c0c7;flex:1;justify-content:center;align-items:center;font-size:clamp(10px,1.4vmin,13px);font-weight:600;display:flex}.coords-files{display:flex}.coords-files#coords-files-top{grid-area:1/2}.coords-files#coords-files-bottom{grid-area:3/2}.coords-files span{text-align:center;color:#b9c0c7;flex:1;font-size:clamp(10px,1.4vmin,13px);font-weight:600;line-height:1.4rem}.move-indicator{border-radius:50%;grid-area:3/3;place-self:center;width:18px;height:18px;transition:background-color .15s}.move-indicator.turn-white{background-color:#f2f2f2;box-shadow:0 0 0 1px #0006}.move-indicator.turn-black{background-color:#0e0e0e;box-shadow:0 0 0 1px #ffffff4d}#board{grid-area:2/2;width:100%;height:100%}#board cg-wrap{width:100%;height:100%}
