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

body { 
  font-family: Arial, sans-serif; 
  background: #f0e6f6; /* matches your purple background */
  padding: 20px; 
}

.container { 
  max-width: 800px; 
  margin: 30px auto; 
  background: #fff; 
  padding: 30px; 
  border-radius: 8px; 
  box-shadow: 0 2px 10px rgba(0,0,0,0.1); 
}

h2 { 
  text-align: center; 
  margin-bottom: 20px; 
}

/* 2 column layout */
.form-row {
  display: flex;
  gap: 15px;
  margin-bottom: 15px;
  flex-wrap: wrap;
}

.form-group {
  flex: 1 1 45%; /* allows 2 per row, 3 for city/zip/country */
  min-width: 200px;
}

label {
  display: block;
  font-weight: bold;
  margin-bottom: 5px;
  font-size: 14px;
  text-align: center;
}

/* Normal inputs */
input[type="text"], 
input[type="email"], 
input[type="password"],
select { 
  width: 100%; 
  padding: 10px; 
  border: 1px solid #ccc; 
  border-radius: 4px; 
  font-size: 15px; 
}

/* File input fix */
input[type="file"] {
  width: auto;
  padding: 5px;
  border: none;
}

/* Button fix */
button, input[type="submit"] { 
  width: 100%;
  padding: 14px 20px; 
  background: #FFD700; /* yellow */
  color: #000;
  border: 2px solid #DAA520; 
  border-radius: 25px; /* rounded pill */
  cursor: pointer; 
  font-weight: bold; 
  font-size: 16px;
  margin-top: 15px;
  text-align: center;
  line-height: 1.2; /* stops text from being cut off */
  display: block;
}

button:hover { background: #FFC700; }

/* Center the file input */
.center { text-align: center; }

@media (max-width: 700px) { 
  .form-row { flex-direction: column; }
  .form-group { flex: 1 1 100%; }
  body { padding: 10px; } 
  .container { padding: 20px; } 
}
