.mode,
.color {
    display: flex;
    flex-direction: row;
    gap: 1.2rem;
    /* Use rem for gap */
}

.text-output {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 3.6rem 0;
    /* Use rem for vertical margin */
}

.rating-box {
    background: #333;
    color: var(--text-color-alt);
    font-weight: bold;
    font-size: 1.1em;
    /* Slightly smaller for mobile */
    padding: 1.2rem 3.6rem;
    border-radius: 1.8rem;
    box-shadow: var(--box-shadow-soft);
    letter-spacing: 0.08em;
    border: var(--border-muted);
    display: inline-flex;
    align-items: center;
}

.rating-icon {
    vertical-align: middle;
}

.move-list {
    list-style: none;
    padding: 0;
    color: var(--text-color-alt);
    font-family: var(--font-alt);
    font-size: 1em;
}

.move-list li {
    padding: 0.9rem 1.8rem;
    border-radius: 0.9rem;
    transition: background 0.2s, color 0.2s;
    cursor: pointer;
}

.move-list li:hover {
    background: #2ea4ff22;
    color: var(--text-color-hover);
}

.move-list-container {
    display: none;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    background: linear-gradient(135deg, #23272f 60%, #2ea4ff22 100%);
    border: var(--border-muted);
    box-shadow: var(--box-shadow-heavy);
    padding: 0.4rem 1.2rem;
    box-sizing: border-box;
    overflow-y: auto;
    height: 32rem;
    width: 42rem;
    max-width: 20rem;
    border-radius: 1.8rem;
    overflow-y: auto;
}

.play-again-button {
    display: none;
    margin: 2.4rem auto 0 auto;
    padding: 1.2rem 3.6rem;
    background: linear-gradient(90deg, var(--primary-color) 60%, var(--background-color) 100%);
    color: var(--text-color-alt);
    font-size: 1.1em;
    font-weight: bold;
    border: none;
    border-radius: 1.8rem;
    box-shadow: var(--box-shadow-soft);
    cursor: pointer;
    transition: background 0.2s, color 0.2s, box-shadow 0.2s;
    letter-spacing: 0.08em;
}

.play-again-button:hover,
.play-again-button:focus {
    background: linear-gradient(90deg, var(--background-color) 60%, var(--primary-color) 100%);
    color: var(--text-color-hover);
    box-shadow: var(--box-shadow-heavy);
    outline: none;
}

@media (max-width: 600px) {
    .move-list-container {
        height: 32rem;
        width: 54rem;
        padding: 2.4rem 1.8rem;
    }

    .rating-box {
        font-size: 1em;
        padding: 1.8rem 3rem;
    }

    .move-list li {
        font-size: 0.95em;
        padding: 1.2rem 2.4rem;
    }
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}