body.signup-page {
  font-family: 'Inter', sans-serif;
  background-color: #f4f4f4;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  min-height: 100vh;
}

.signup-container {
  background: white;
  padding: 40px;
  border-radius: 12px;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
  width: 90%;
  max-width: 500px;
  margin: 40px auto;
}

.signup-container h1 {
  text-align: center;
  margin-bottom: 30px;
  color: #2980b9;
}

form label {
  display: block;
  margin-top: 15px;
  font-weight: 600;
  font-size: 15px;
}

form input,
form select,
form button,
form textarea {
  width: 100%;
  padding: 12px;
  margin-top: 6px;
  border: 1px solid #ccc;
  border-radius: 8px;
  font-size: 14px;
  box-sizing: border-box;
}

form input[type="file"] {
  padding: 6px;
}

form button[type="submit"] {
  background-color: #2980b9;
  color: white;
  font-size: 16px;
  font-weight: bold;
  margin-top: 25px;
  cursor: pointer;
  transition: background-color 0.3s ease;
  border: none;
}

form button[type="submit"]:hover {
  background-color: #27ae60;
}

/* 📍 Geolocation Button */
#locate-btn {
  background-color: #27ae60;
  color: white;
  border: none;
  margin-top: 8px;
  padding: 10px;
  font-weight: bold;
  cursor: pointer;
  border-radius: 8px;
  width: 100%;
  font-size: 14px;
  transition: background-color 0.2s ease;
}

#locate-btn:hover {
  background-color: #219150;
}

#manual-address {
  margin-top: 10px;
}

/* 🗺️ Map Styling */
#map {
  height: 300px;
  margin-top: 10px;
  border: 1px solid #ccc;
  border-radius: 8px;
}

/* 🔗 Login Link */
.login-link {
  text-align: center;
  margin-top: 25px;
  font-size: 14px;
}

.login-link a {
  color: #2980b9;
  text-decoration: none;
}

.login-link a:hover {
  text-decoration: underline;
}

/* 📱 Responsive Adjustments */
@media (max-width: 600px) {
  .signup-container {
    padding: 20px;
    margin: 20px;
  }

  form input,
  form select,
  form button,
  form textarea {
    font-size: 15px;
    padding: 10px;
  }

  #locate-btn {
    padding: 10px;
  }

  #map {
    height: 250px;
  }
}

#home-btn {
  position: fixed;
  bottom: 20px;
  left: 20px;
  background: #4CAF50;
  color: white;
  padding: 12px 18px;
  font-size: 18px;
  border-radius: 50px;
  text-decoration: none;
  box-shadow: 0 4px 6px rgba(0,0,0,0.3);
  z-index: 9999;
}
#home-btn:hover {
  background: #45a049;
}


body {
    font-family: Arial, sans-serif;
    background-color: #f4f4f4;
    display: grid; /* Use grid to center the form */
    justify-items: center;
    align-items: center;
    height: 100vh;
    margin: 0;
    width: 100vw;
    
    background-image: url('https://media.bizj.us/view/img/10594462/howtodobusiness*1200xx5616-3159-0-293.jpg'); /* Replace with your image URL */
    background-size: cover;  /* Ensures the image covers the whole page */
    background-position: center; /* Centers the image */
    background-repeat: no-repeat; /* Prevents repeating */
    background-attachment: fixed; /* Keeps the image fixed while scrolling */
}

form {
    background: white;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
    max-width: 600px;
}

.form-group {
    display: flex;
    flex-direction: column; /* Stack elements vertically */
    align-items: flex-start; /* Align text to the left */
    margin-bottom: 15px;
    padding-left: 1rem; 
}

.form-group label {
    width: 100%; /* Fixed missing percentage symbol */
    text-align: left;
    margin-right: 5px;
}

.form-group input, 
.form-group select {
    width: 100%;
    padding: 5px;
}

button {
    display: block;
    width: 100%;
    padding: 10px;
    background: #007BFF;
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
}

button:hover {
    background: #0056b3;
}

label {
    display: block; /* Makes label take the full width and move to the next line */
    margin-bottom: 5px; /* Adds space between the label and dropdown */
    margin-top: 1rem; /* Pushes the label downward */
}

select {
    width: 100%; /* Makes dropdown wider and more readable */
    padding: 8px;
}

h1 {
    border-bottom: 3px solid black; /* Adjust thickness and color */
    padding-bottom: 5px; /* Adds space between text and underline */
    display: inline-block; /* Ensures the underline only covers the text width */
}

#description {
    text-align: left; /* Aligns text to the left */
    max-width: 600px; /* Matches form width */
    margin: 0 auto 20px auto; /* Centers it and adds spacing below */
    padding: 0 10px; /* Adds a bit of padding for better readability */
}

@media (max-width: 600px) {
    form {
        width: 90%;
    }
}

fieldset {
    padding: 2rem 1rem; /* Adds padding (top/bottom = 2rem, left/right = 1rem) */
    border: none; /* Removes default border */
    margin-bottom: 1rem; /* Adjust as needed */
}
 
input, select, textarea {
    width: 100%; /* Ensures they all take up the same width */
    padding: 10px; /* Consistent padding */
    border: 1px solid #ccc; /* Optional: Ensures a uniform border */
    border-radius: 5px; /* Optional: Makes input fields look nicer */
    box-sizing: border-box; /* Ensures padding doesn’t affect width */
}

h1, p {
    background-color: rgba(255, 255, 255, 0.6); /* Light semi-transparent background */
    padding: 10px; /* Adds spacing inside */
    display: inline-block; /* Keeps background only around the text */
    border-radius: 5px; /* Softens edges */
}

.checkbox-group,
.radio-group {
    display: flex;
    align-items: center; /* Aligns input and label vertically */
    gap: 5px; /* Adds spacing between input and label */
}

input[type="radio"],
input[type="checkbox"] {
    margin: 0; /* Resets any default margin */
    width: 16px; /* Ensures uniform size */
    height: 16px;
}

#get-location {
    margin-bottom: 1.5rem; /* Adjust value as needed */
}

/* Ensures checkboxes and radios are closer to their labels */
.form-group input[type="checkbox"],
.form-group input[type="radio"] {
    margin-right: 0.5rem; /* Adjust space between input and label */
    vertical-align: middle; /* Aligns them properly with the text */
}

/* Ensures checkboxes/radio buttons and their labels are stacked neatly */
.checkbox-group label,
.radio-group label {
    display: flex;
    align-items: center;
    gap: 0.5rem; /* Controls spacing between input and label */
}

