/* Basic form container styling */
.luxthemes-form {
  max-width: 600px;
  margin: 20px auto;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  color: #333;
}

/* Each field wrapper */
.luxthemes-form-field {
  margin-bottom: 1.2em;
}
.luxthemes-form-field label {
  display: block;
  margin-bottom: 6px;
  font-weight: 600;
  color: #444;
}
.luxthemes-form-field input[type="text"],
.luxthemes-form-field input[type="email"],
.luxthemes-form-field input[type="url"],
.luxthemes-form-field input[type="tel"],
.luxthemes-form-field input[type="password"],
.luxthemes-form-field input[type="range"],
.luxthemes-form-field input[type="datetime-local"],
.luxthemes-form-field textarea,
.luxthemes-form-field select {
  width: 100%;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: 14px;
  outline: none;
  box-sizing: border-box;
}
.luxthemes-form-field input:focus,
.luxthemes-form-field textarea:focus,
.luxthemes-form-field select:focus {
  border-color: #666;
}

/* Multiple-choice, checkboxes inline styling */
.luxthemes-inline-option {
  display: block;
  margin: 4px 0;
}
.luxthemes-inline-option input {
  margin-right: 5px;
}

/* Layout columns */
.luxthemes-layout-row {
  display: flex;
  gap: 10px;
  margin-bottom: 1.2em;
}
.luxthemes-col {
  flex: 1 1 0;
}

/* e.g. 2 columns => each col is 50% width */
.columns-2 .luxthemes-col {
  width: 50%;
}
/* 3 columns => 33.33% each */
.columns-3 .luxthemes-col {
  width: 33.3333%;
}
/* 4 columns => 25% each */
.columns-4 .luxthemes-col {
  width: 25%;
}

/* Submit button */
.luxthemes-submit-button {
  background: #0073aa;
  color: #fff;
  border: none;
  padding: 10px 20px;
  cursor: pointer;
  border-radius: 3px;
  font-size: 14px;
}
.luxthemes-submit-button:hover {
  background: #005d8a;
}

/* Multi-step form steps (if used) */
.luxthemes-step {
  display: none;
}
.luxthemes-step.active {
  display: block;
}
/* Step nav buttons */
.luxthemes-step-nav {
  margin-top: 20px;
  display: flex;
  justify-content: space-between;
}
.luxthemes-prev-step,
.luxthemes-next-step {
  background: #aaa;
  color: #fff;
  border: none;
  padding: 8px 14px;
  border-radius: 3px;
  cursor: pointer;
}
.luxthemes-prev-step:hover,
.luxthemes-next-step:hover {
  background: #777;
}
