
:root {
    --main-color: #333;
    --bg-color: #f4f4f4;
    --accent-color: #4CAF50;
    --glow-color: rgba(76, 175, 80, 0.7);

    /* Dark Mode variables */
    --dark-main-color: #f4f4f4;
    --dark-bg-color: #2c2c2c;
    --dark-container-bg: #3c3c3c;
    --dark-text-color: #f4f4f4;
    --dark-box-shadow: rgba(0,0,0,0.5);
}

body {
    font-family: sans-serif;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    margin: 0;
    background-color: var(--bg-color);
    background-image: radial-gradient(var(--main-color) 0.5px, transparent 0.5px), radial-gradient(var(--main-color) 0.5px, var(--bg-color) 0.5px);
    background-size: 20px 20px;
    background-position: 0 0, 10px 10px;
    color: var(--main-color); /* Default text color */
    transition: background-color 0.3s ease, color 0.3s ease;
}

body.dark-mode {
    background-color: var(--dark-bg-color);
    background-image: radial-gradient(var(--dark-main-color) 0.5px, transparent 0.5px), radial-gradient(var(--dark-main-color) 0.5px, var(--dark-bg-color) 0.5px);
    color: var(--dark-text-color);
}

.container {
    text-align: center;
    padding: 40px;
    background-color: white;
    border-radius: 15px;
    box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23);
    transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

body.dark-mode .container {
    background-color: var(--dark-container-bg);
    box-shadow: 0 10px 20px var(--dark-box-shadow), 0 6px 6px var(--dark-box-shadow);
}

.numbers-container {
    display: flex;
    justify-content: center;
    margin: 30px 0;
}

.number {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: var(--accent-color);
    color: white;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 24px;
    font-weight: bold;
    margin: 0 10px;
    box-shadow: 0 4px 8px rgba(0,0,0,0.2);
}

#generate-btn {
    padding: 15px 30px;
    font-size: 18px;
    color: white;
    background-color: var(--accent-color);
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 0 10px var(--glow-color);
}

#generate-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 0 20px var(--glow-color);
}

/* Theme Toggle Button Styles */
.theme-switch-wrapper {
    margin-bottom: 20px;
    text-align: right; /* Align to the right */
}

#theme-toggle-button {
    background-color: var(--accent-color);
    color: white;
    border: none;
    padding: 8px 15px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 14px;
    transition: background-color 0.3s ease;
}

#theme-toggle-button:hover {
    background-color: darken(var(--accent-color), 10%); /* This won't work in pure CSS, but demonstrates intent */
    opacity: 0.9;
}

body.dark-mode #theme-toggle-button {
    background-color: var(--dark-container-bg);
    color: var(--dark-text-color);
    border: 1px solid var(--dark-text-color);
}
