body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    max-height: 0;
    margin: 0;
    background-color: #282c34; /* Dark background */
    color: #f0f0f0; /* Light text */
    padding: 20px;
    box-sizing: border-box;
}

.number {
    font-size: 4em;
    font-weight: bold;
    color: #61dafb; /* Accent color for the number */
    text-shadow: 0 0 10px rgba(97, 218, 251, 0.6);
}

.neededScore {
    font-size: 2em;
    font-weight: bold;
}

.scores {
    margin-bottom: 30px;
}

.negative {
    color: rgb(251, 97, 97); /* Accent color for the number */
    text-shadow: 0 0 10px rgba(251, 97, 97, 0.6);
}

.positive {
    color: rgb(143, 251, 97); /* Accent color for the number */
    text-shadow: 0 0 10px rgba(143, 251, 97, 0.6);
}

.middlePart{
    display: grid;
    grid-template-columns: repeat(minmax(80px, 1fr), auto-fit); /* Responsive grid for buttons */
    gap: 15px;
    width: 100%;
    max-width: 600px; /* Limit overall width */
    margin-bottom: 20px;
}

.increment,
.decrement,
.names {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(80px, 1fr)); /* Responsive grid for buttons */
    gap: 15px;
    width: 100%;
    max-width: 600px; /* Limit overall width */
}

/*.increment,
.decrement,*/
/* .names, */
.oudlers {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(80px, 1fr));
    gap: 15px;
    width: 100%;
    max-width: 600px; /* Limit overall width */
    margin-bottom: 20px;
}
.resetDiv{
    display: grid;
    grid-template-columns: 75% 20%;/* repeat(auto-fit, minmax(80px, 1fr)); */
    gap: 5%;
    width: 100%;
    max-width: 600px; /* Limit overall width */
    margin-bottom: 20px;
}

.scores {
 text-align: center;
 margin-bottom: 0;
}

.reset {
    color:#f0f0f0;
    background-color: rgba(0, 0, 0, 0.15);
    
    font-weight: 900;
}

.oudler,
.switch {
    background-color: #f0f0f0;
}

button,
.names>span {
    padding: 15px 10px;
    border: none;
    border-radius: 10px;
    font-size: 1.2em;
    font-weight: bold;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
}

.button:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.4);
}

button:active {
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

/* Increment buttons */
.increment > .button {
    color: #e0ff00; /* Yellow text */
    background-color: #28a745; /* Green background */
}

.increment > .button:hover {
    background-color: #218838;
}

/* Decrement buttons */
.decrement > .button {
    color: #e0ff00; /* Yellow text */
    background-color: #dc3545; /* Red background */
}

.decrement > .button:hover {
    background-color: #c82333;
}

.operator {
    margin-right: 5px;
}

.hidden {
    display: none !important;
}

.names {
    display: none;
}

.half>.button {
    filter:brightness(80%);   
}


/* Media queries for even better mobile adaptation */
@media (max-width: 480px) {
    .number {
        font-size: 4em;
    }
    .neededScore {
        font-size: 2em;
    }

/*    .increment,
    .decrement,*/
    /* .names, */
    .oudlers {
        grid-template-columns: repeat(auto-fit, minmax(5px, 1fr)); /* Smaller buttons on very small screens */
        gap: 10px;
    }

    .middlePart{
        display: grid;
        grid-template-columns: 30% 30% 40%;
        gap: 0px;
        width: 100%;
        max-width: 600px; /* Limit overall width */
        margin-bottom: 20px;
    }

    .increment,
    .decrement,
    .names {
        display: grid;
        grid-template-columns: repeat(minmax(80px, 1fr), auto-fit); /* Responsive grid for buttons */
        gap: 15px;
        width: 100%;
        max-width: 600px; /* Limit overall width */
        margin-bottom: 20px;
    }

    .button
    {
        font-size: 1em;
        padding: 20px 4px;
    }

    .scores {
        padding: 20px;
        padding-top: 0;
    }

    .middlePart > .half {
        order: 1;
    }

    .middlePart > .names {
        order: 2;
    }

    .middlePart > .whole {
        order: 3;
    }

}