body {
    color: #35352c;
    background-color: #e6e6e6;
    font: 100% Helvetica,Arial,sans-serif;
    width: 100%;
    height: 100%;
    min-height: 100%;
    margin: 0;
    padding: 0;
		line-height: 1.5;
}

* {
  box-sizing: border-box;
}

#container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

#xword-grid {
    display: grid;
    width: 90vw;
    height: 90vw;
    max-width: 500px;
    max-height: 500px;
    margin:  20px;
    border: 1px solid #000;
    gap: 1px;
    background-color: #000;
}

.grid-item {
    padding: 0;
    width: 100%;
    height: 100%;
}

input {
    width: 100%;
    height: 100%;
    text-transform: uppercase;
    text-align: center;
    font-size: 1.3rem;
    border: none;
    background-color: #fff;
    color:#000;
}

#clues {
    width: 90vw;
    max-width: 500px;
    margin: 20px ;
    list-style: none;
}

li {
    list-style: none;
    cursor: pointer;
    padding: 5px;
    border-radius: 5px;
    transition: background-color 0.5s;
}

li:hover {
    background-color: #ccc;
}

#currentClue {
    width: 90vw;
    max-width: 500px;
    margin: 0 10px 50px 10px ;
    height: 1em;
    font-weight: bold;
    text-align: center;
}

#buttons {
    width: 90vw;
    max-width: 500px;
    margin: 0 10px 10px 10px ;
    height: 2em;
    font-weight: bold;
    display: flex;
    justify-content: center;
}

.bold {
    font-weight: bold;
}

span {
    position: relative;
}

.clueNo {
    position: absolute;
    top: 2px;
    left: 2px;
    font-size: 0.7em;
}

button {
    margin: 0 1em;
    cursor: pointer;
    padding: 5px;
    background-color: #E0E0E0;
    color: #000;
    border: 1px solid #888;
    border-radius: 5px;
    transition: background-color 0.2s;
}

button:hover {
    background-color: #B0B0B0;
}
