body {
    margin: 0;

    min-height: 100vh;
    display: grid;
    /* Use 'auto' so the header/footer size themselves based on content */
    grid-template-columns: 1fr;
    grid-template-rows: 100px 1fr 80px; 
    grid-template-areas: 
      "header"
      "main"
      "footer";
    background-color: #1a1a1a; /* Dark background for gaming feel */
}

header {
    grid-area: header;
    display: flex;
    justify-content: center;
    background: linear-gradient(90deg, #af1616 0%, #1a1a1a 100%);
    padding: 20px 0;
    width: 100%; /* Ensure it spans the full width */
}

header a{
    color: white;
    text-decoration: none;

    font-weight: bold; 
}
main {
    grid-area: main;
    background-color: #121212;
    padding-bottom: 50px;
}
.formContainer {
    display: flex;
    justify-content: center;
    margin-top: 25px ;
}
#registrationForm {
    width: 800px;
    height: auto; /* Changed to auto so it grows with content */
    border: 2px solid #af1616;
    background: rgba(20, 20, 20, 0.9);
    backdrop-filter: blur(10px);
    border-radius: 8px;
    box-shadow: 0 0 20px rgba(175, 22, 22, 0.2);
}
#recoveryForm {
    width: 800px;
    height: auto; /* Changed to auto so it grows with content */
    border: 2px solid #af1616;
    background: rgba(20, 20, 20, 0.9);
    backdrop-filter: blur(10px);
    border-radius: 8px;
    box-shadow: 0 0 20px rgba(175, 22, 22, 0.2);
}



.letter-spacing-2 {
    letter-spacing: 2px;
}

/* Cyberpunk style inputs */
.custom-input {
    background-color: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid #444 !important;
    color: white !important;
    padding: 12px;
}

.custom-input:focus {
    background-color: rgba(255, 255, 255, 0.1) !important;
    border-color: #af1616 !important;
    box-shadow: 0 0 10px rgba(175, 22, 22, 0.4);
    outline: none;
}

/* Button Glow Effect */
.glow-button {
    transition: 0.3s;
    letter-spacing: 1px;
}

.glow-button:hover {
    box-shadow: 0 0 25px rgba(175, 22, 22, 0.6);
    background-color: #d11a1a;
}

/* Style the checkbox */
.form-check-input:checked {
    background-color: #af1616;
    border-color: #af1616;
}

.passError {
    text-align: center;
    padding: 15px;
    border: 2px solid #d11a1a;
    color: #ffffff; /* Brighter white for better contrast */
    border-radius: 8px; /* Slightly sharper to match the 'tech' feel */
    background: rgba(209, 26, 26, 0.1); /* Subtle red tint background */
    box-shadow: 0 0 15px rgba(209, 26, 26, 0.3); /* The Glow */
    margin-top: 15px;
}

.serverError {
  text-align: center;
    padding: 15px;
    border: 2px solid #d11a1a;
    color: #ffffff; /* Brighter white for better contrast */
    border-radius: 8px; /* Slightly sharper to match the 'tech' feel */
    background: rgba(70, 10, 148, 0.297); /* Subtle red tint background */
    box-shadow: 0 0 15px rgba(209, 26, 26, 0.3); /* The Glow */
    margin-top: 15px;
}
.successRegistry {
  text-align: center;
    padding: 15px;
    border: 2px solid #1dd11a;
    color: #ffffff; /* Brighter white for better contrast */
    border-radius: 8px; /* Slightly sharper to match the 'tech' feel */
    background: rgba(10, 148, 51, 0.297); /* Subtle red tint background */
    box-shadow: 0 0 15px rgba(209, 26, 26, 0.3); /* The Glow */
    margin-top: 15px;
}

.duplicateError {
    text-align: center;
    padding: 15px;
    border: 2px solid #ffae00; /* Warning Orange */
    color: #ffffff;
    border-radius: 8px;
    background: rgba(255, 174, 0, 0.1);
    box-shadow: 0 0 15px rgba(255, 174, 0, 0.3);
    margin-top: 15px;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 0.8rem;
}


footer {
    grid-area: footer;
    background: linear-gradient(90deg, #af1616 43%, #fcfbfd 100%);
    padding: 10px 0;
    display: flex;
    justify-content: center; 
}

footer ul li a{
    color: white;
    text-decoration: none;

    font-weight: bold; 
}

