body {
    background-color: #54616a;
    color: #ffffff;
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
}

header {
    padding: 10px;
    text-align: right;
}

header a {
    color: #ffffff;
    margin-left: 15px;
    text-decoration: none;
}

main {
    padding: 20px;
    text-align: center;
}

footer {
    color: #cccccc;
    text-align: center;
    padding: 10px;
    position: fixed;
    bottom: 0;
    width: 100%;
    background-color: #54616a;
}

footer a {
    color: #cccccc;
    text-decoration: none;
    margin: 0 10px;
}

form {
    margin: 20px 0;
}

label {
    display: block;
    margin: 10px 0 5px;
}

input, textarea {
    width: 100%;
    max-width: 300px;
    padding: 8px;
    margin-bottom: 10px;
    background-color: #ffffff;
    color: #000000;
}

textarea {
    max-width: 800px;
    height: 100px;
}

button {
    background-color: #ffffff;
    color: #54616a;
    padding: 10px 20px;
    border: none;
    cursor: pointer;
}

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

.response {
    margin-top: 20px;
}

/* Logo Styling */
.logo-wrapper {
    text-align: center;
    margin: 20px 0;
}

.logo {
    width: 160px;
    height: auto;
}

/* Welcome Text Block */
.welcome-text {
    max-width: 700px;
    margin: 0 auto;
    padding: 0 15px;
    text-align: center;
}

.start-link {
    display: inline-block;
    margin-top: 15px;
    background-color: #ffffff;
    color: #54616a;
    padding: 10px 20px;
    text-decoration: none;
    border-radius: 5px;
}

.start-link:hover {
    background-color: #cccccc;
}

/* Responsive Design */
@media (max-width: 600px) {
    input, textarea {
        max-width: 100%;
    }

    header a {
        display: block;
        margin: 5px 0;
    }

    .logo {
        width: 120px;
        height: 120px;
    }

    .welcome-text {
        padding: 0 15px;
    }
	
    .register-table td {
        padding: 5px 10px; /* Less vertical padding */
    }

    label {
        margin: 5px 0 2px; /* Less space above and below labels */
    }

    input {
        margin-bottom: 6px; /* Less space under inputs */
    }	
}

/* Force white text for everything */
body, h1, h2, h3, h4, h5, h6, label, p, a, td {
    color: #ffffff;
}

/* Style for login table */
.login-table {
    margin-top: 20px;
    color: #ffffff;
}

.login-table td {
    padding: 10px;
}

/* Style error messages */
.error-text {
    color: #ffcccc;
    font-weight: bold;
}
/* Style for register table */
.register-table {
    margin-top: 20px;
    color: #ffffff;
}

.register-table td {
    padding: 10px;
}

/* Make error messages visible */
.error-text {
    color: #ffcccc;
    font-weight: bold;
    margin-bottom: 20px;
}


.password-wrapper {
    position: relative;
    display: flex;
    align-items: center;
}

.password-wrapper input {
    padding-right: 30px;
}

.password-wrapper span {
    position: absolute;
    right: 10px;
    cursor: pointer;
}
