.oie-form {
  max-width: 800px;
  margin: 0 auto 80px;
  padding: 20px;
  background: #fff;
  border-radius: 8px;
}
.oie-form .oie-field {
  margin-bottom: 24px;
}
.oie-form .oie-field:first-child {
  margin-top: 40px;
}
.oie-form .oie-field label {
  display: block;
  margin-bottom: 8px;
  font-weight: 500;
  color: #333;
}
.oie-form .oie-field input[type=text],
.oie-form .oie-field input[type=email] {
  width: 100%;
  padding: 12px;
  border: 1px solid #ddd;
  border-radius: 4px;
  font-size: 16px;
}
.oie-form .oie-field input[type=text]:focus,
.oie-form .oie-field input[type=email]:focus {
  outline: none;
  border-color: #4a90e2;
  box-shadow: 0 0 0 2px rgba(74, 144, 226, 0.2);
}
.oie-form .oie-field input[type=checkbox],
.oie-form .oie-field input[type=radio] {
  margin-right: 8px;
}
.oie-form .oie-field input[type=checkbox] + label,
.oie-form .oie-field input[type=radio] + label {
  display: inline-block;
  margin: 0 16px 8px 0;
  font-weight: normal;
}
.oie-form button[type=submit] {
  width: 100%;
  padding: 12px;
  background: #4a90e2;
  color: white;
  border: none;
  border-radius: 4px;
  font-size: 16px;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.2s;
}
.oie-form button[type=submit]:hover {
  background: #357abd;
}
.oie-form .required {
  color: #e53935;
  margin-left: 4px;
}

.oie-error-messages {
  margin-bottom: 20px;
  padding: 12px;
  background: #ffebee;
  border: 1px solid #ffcdd2;
  border-radius: 4px;
  color: #c62828;
}

.oie-message {
  margin: 20px auto;
  max-width: 800px;
  padding: 12px;
  border-radius: 4px;
  text-align: center;
}
.oie-message.oie-success {
  background: #e8f5e9;
  color: #2e7d32;
  border: 1px solid #c8e6c9;
}
.oie-message.oie-error {
  background: #ffebee;
  color: #c62828;
  border: 1px solid #ffcdd2;
}