body {
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
margin: 0;
padding: 0;
background: #f7f7f7;
color: #333;
text-align: center;
}

.container {
width: 80%;
margin: 30px auto;
padding: 20px;
background: #fff;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

.word-input {
margin-bottom: 20px;
}

.word-input textarea {
width: 100%;
height: 100px;
margin-bottom: 10px;
padding: 10px;
border: 1px solid #ddd;
font-size: 16px;
}

.input-group {
margin: 10px 0;
}

.input-group label {
margin-right: 10px;
}

.input-group input {
width: 50px;
padding: 5px;
border: 1px solid #ddd;
font-size: 16px;
}

button {
background: #5cb85c;
color: white;
border: none;
padding: 10px 20px;
margin: 5px;
font-size: 16px;
cursor: pointer;
}

button:hover {
background: #4cae4c;
}

.puzzle-container,
.solution-container {
margin-top: 20px;
overflow-x: auto;
}

table {
margin: auto;
border-collapse: collapse;
}

table td {
border: 1px solid #000;
width: 30px;
height: 30px;
text-align: center;
vertical-align: middle;
font-size: 20px;
}

/* Agregar estilos específicos para el canvas si es necesario */
canvas {
border: 1px solid #000;
margin-top: 10px;
background-color: #fff;
}

/* Posibles estilos para la impresión */
@media print {
body * {
visibility: hidden;
}

.print-area, .print-area * {
visibility: visible;
}

.print-area {
position: absolute;
left: 0;
top: 0;
}

#puzzleCanvas {
margin-bottom: 20px; /* Espacio entre la sopa de letras y la lista de palabras */
}
}

/* Estilos del Canvas y lista de palabras */
#puzzleCanvas {
border: 1px solid #000;
background-color: #fff;
}

.word-list {
margin-top: 20px;
}