/* ===== ESTILOS DEL TABLERO DE AJEDREZ ===== */

/* Container del tablero - Copiado de tablero.html */
.board,
#board {
    width: 100%;
    max-width: 650px; /* Aumentado de 560px para aprovechar mejor el espacio */
    height: 650px; /* Aumentado proporcionalmente */
    max-height: 650px;
    aspect-ratio: 1 / 1; /* Mantener proporción cuadrada */
    margin: 0 auto;
    display: block;
    position: relative;
    contain: layout paint size; /* aísla cálculos de layout */
    border-radius: 12px;
    box-shadow: 
        0 20px 60px rgba(0, 0, 0, 0.8),
        0 0 0 1px rgba(212, 175, 55, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.05);
    overflow-anchor: none; /* Evita scroll anchoring */
    box-sizing: border-box;
}

/* Personalización de Chessground */
.board cg-board,
#board cg-board,
.quiz-jaque-board__canvas cg-board,
.modal-respuesta__board-canvas cg-board {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    border-radius: 12px;
}

/* Colores personalizados del tablero - Igual que tablero.html */
.board cg-board,
#board cg-board,
.quiz-jaque-board__canvas cg-board,
.modal-respuesta__board-canvas cg-board {
    background-color: #EEE4D1 !important;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 8 8"><g id="a"><g id="b"><g id="c"><g id="d"><rect width="1" height="1" id="e" fill="%23EEE4D1"/><use x="1" y="1" href="%23e"/><rect y="1" width="1" height="1" id="f" fill="%232F9E8E"/><use x="1" y="-1" href="%23f"/></g><use x="2" href="%23d"/></g><use x="4" href="%23c"/></g><use y="2" href="%23b"/></g><use y="4" href="%23a"/></svg>') !important;
}

/* Casillas del tablero */
.board cg-board square.move-dest,
#board cg-board square.move-dest,
.quiz-jaque-board__canvas cg-board square.move-dest,
.modal-respuesta__board-canvas cg-board square.move-dest {
    background: radial-gradient(circle, rgba(212, 175, 55, 0.3) 25%, transparent 25%);
}

.board cg-board square.selected,
#board cg-board square.selected,
.quiz-jaque-board__canvas cg-board square.selected,
.modal-respuesta__board-canvas cg-board square.selected {
    background-color: rgba(212, 175, 55, 0.4) !important;
}

.board cg-board square.last-move,
#board cg-board square.last-move,
.quiz-jaque-board__canvas cg-board square.last-move,
.modal-respuesta__board-canvas cg-board square.last-move {
    background-color: rgba(212, 175, 55, 0.2) !important;
}

/* Efectos especiales */
.board-highlight-correct {
    animation: glowPulse 0.5s ease-in-out 3;
}

.board-highlight-incorrect {
    animation: shake 0.5s ease-in-out;
}

/* Quitar transiciones que puedan causar reflow */
#board,
#board .cg-wrap,
#board piece,
#board .square,
#board .coords,
#board .cg-board,
.quiz-jaque-board__canvas,
.quiz-jaque-board__canvas .cg-wrap,
.quiz-jaque-board__canvas piece,
.quiz-jaque-board__canvas .square,
.quiz-jaque-board__canvas .coords,
.quiz-jaque-board__canvas .cg-board,
.modal-respuesta__board-canvas,
.modal-respuesta__board-canvas .cg-wrap,
.modal-respuesta__board-canvas piece,
.modal-respuesta__board-canvas .square,
.modal-respuesta__board-canvas .coords,
.modal-respuesta__board-canvas .cg-board {
    transition: none !important;
    animation: none !important;
}

/* Asegurar que el tablero se muestre completamente con coordenadas */
.cg-wrap {
    overflow: visible !important;
    width: 100% !important;
    height: 100% !important;
}

.cg-container {
    overflow: visible !important;
    width: 100% !important;
    height: 100% !important;
}

.cg-board {
    overflow: visible !important;
}

/* Coordenadas siempre visibles */
.cg-wrap coords {
    pointer-events: none;
    user-select: none;
}

.cg-wrap coords.ranks {
    left: 0 !important;
    right: auto !important;
}

.cg-wrap coords.files {
    bottom: 0 !important;
    top: auto !important;
}

#board.modo-legal piece.dragging,
#board.modo-legal .cg-wrap piece.dragging {
    opacity: 1 !important;
}

#board.modo-legal piece.ghost,
#board.modo-legal .cg-wrap piece.ghost {
    display: none !important;
}

/* Overflow anchor para evitar scroll jumps */
#board > cg-wrap,
.pregunta-main,
.pregunta-board-panel,
.pregunta-info-panel {
    overflow-anchor: none;
}

/* Responsive */
@media (max-width: 1200px) {
    .board,
    #board {
        max-width: 550px;
        height: 550px;
        max-height: 550px;
    }
}

@media (max-width: 768px) {
    .board,
    #board {
        max-width: 100%;
        height: auto;
        max-height: 480px;
        aspect-ratio: 1 / 1;
    }
}

@media (max-width: 400px) {
    .board,
    #board {
        max-width: 100%;
        max-height: 360px;
    }
}

@media (max-height: 600px) and (orientation: landscape) {
    .board,
    #board {
        width: 450px;
        max-width: 100%;
    }
}

/* Congelar layout: evita transiciones/animaciones y anclaje de scroll */
html { 
    scroll-behavior: auto !important;
}
