* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html, body {
    height: 100%;
    margin: 0;
}

.container {
    background-color: white;
    border-radius: 5px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    padding: 20px;
    width: 300px;
}

.input-group {
    margin-bottom: 15px;
    text-align: left;
}

label {
    display: block;
    margin-bottom: 5px;
    color: #555;
}

input {
    width: 100%;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
}

.login-button {
    width: 100%;
    padding: 10px;
    background-color: #007bff;
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 18px; /* Increased font size */
}

.login-button:hover {
    background-color: #0056b3;
}

.error-message {
    color: red;
    margin-top: 10px;
    text-align: center; /* Center error message */
}

#qr-code-scanner, #no-camera-message {
    text-align: center;
}

.centered-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 80vh; /* Adjust height as needed */
    text-align: center;
}

/* Style for the large button */
#openQRScannerBtn {
    font-size: 24px;
    padding: 20px 40px;
    width: 200px;
    margin-top: 20px;
    border-radius: 8px;
    font-weight: bold;
}

header {
    display: flex;
    justify-content: center; /* Center the h1 horizontally */
    align-items: center; /* Center the h1 vertically */
    position: relative; /* Allow absolute positioning for the logout button */
    padding: 10px 20px;
    height: 100px; /* Ensures enough height for centering */
    flex-wrap: wrap; /* Allow elements to wrap when needed */
}

h1 {
    margin: 0; /* Remove default margin */
    font-size: 24px; /* Adjust font size */
    text-align: center; /* Center the title horizontally */
    flex-grow: 1; /* Allow the title to take available space */
    display: flex;
    justify-content: center; /* Center the title horizontally */
    align-items: center; /* Center the title vertically */
}

.user-info {
    margin-left: 20px; /* Space between the h1 and the logout button */
    display: flex;
    align-items: center; /* Vertically align the logout button */
    position: absolute;
    right: 20px;
}

.logout-button {
    background-color: #ff4344; /* Button color */
    color: white;
    border: none;
    padding: 10px 15px;
    cursor: pointer;
    border-radius: 5px;
}

.logout-button:hover {
    background-color: #ff1f20; /* Darken on hover */
}

/* Mobile-specific adjustments */
@media (max-width: 768px) {
    header {
        flex-direction: column; /* Stack elements vertically on small screens */
        height: auto; /* Let the header take the height of its content */
        align-items: center; /* Center align the content vertically */
    }

    .user-info {
        margin-left: 0; /* Remove the left margin */
        align-items: center;
        position: relative;
        right: 0;
    }

    h1 {
        font-size: 20px; /* Adjust font size for smaller screens */
        margin-bottom: 10px; /* Add margin below the header */
        text-align: center; /* Center title text */
    }

    .logout-button {
        width: 100%; /* Make the logout button span full width on small screens */
        text-align: center;
    }
}


.large-btn {
    font-size: 18px;      /* Adjust font size */
    padding: 15px 25px;   /* Increase padding */
    min-width: 200px;     /* Optional: set a minimum width */
    height: 50px;         /* Optional: set a height */
}

.promotion-item {
    margin-bottom: 15px;  /* Space out the items */
    padding: 10px;        /* Optional: add padding for items */
    text-align: center;   /* Center content for better aesthetics */
    cursor: pointer;
}

.promotion-photo {
    max-width: 100%;     /* Make the image responsive */
    height: auto;        /* Maintain aspect ratio */
    max-height: 100px;
    margin-bottom: 10px;
}

.content-view {
    margin-top: 0px; /* Adjust this value to prevent content from hiding under the filter */
}

.table td, .table th {
    text-align: left; /* Left align text in table cells */
}

.table input, .table select {
    text-align: left; /* Left align text in input fields and dropdowns */
}

/* Ensures the button stays above the footer */
footer {
    z-index: 500; /* Lower than the button's z-index */
    position: relative; /* Keeps it in the document flow */
}