/* ===== Forms Theme — Flesh to Fiction ===== */

/* General input + textarea */
input,
textarea,
select {
  width: 100%;
  padding: .6rem;
  border-radius: 8px;
  border: 1px solid #3a3a3a;
  background-color: #0e0e0e;
  color: #f2f2f2;
  font-size: 1rem;
}

/* Autofill fix for Chrome/Edge/Safari */
input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
  -webkit-text-fill-color: #f2f2f2 !important;
  -webkit-box-shadow: 0 0 0 1000px #0e0e0e inset !important;
  box-shadow: 0 0 0 1000px #0e0e0e inset !important;
  border: 1px solid #3a3a3a !important;
}

/* File inputs */
input[type="file"] {
  color: #ddd;
  background: #0e0e0e;
  border: 1px solid #3a3a3a;
}

/* Error messages */
.form-error,
.alert.err {
  background: #201010;
  border: 1px solid #7a2a2d;
  color: #f0b6b6;
  padding: .75rem 1rem;
  border-radius: 8px;
  margin: 1rem 0;
  font-weight: 600;
}

/* Success messages */
.form-success,
.alert.ok {
  background: #0f2010;
  border: 1px solid #2d7a2d;
  color: #b6f0b6;
  padding: .75rem 1rem;
  border-radius: 8px;
  margin: 1rem 0;
  font-weight: 600;
}

/* Buttons */
button,
.btn {
  background: #e0b248;
  color: #000;
  padding: .65rem 1.1rem;
  border: none;
  border-radius: 10px;
  font-weight: 800;
  cursor: pointer;
}
button:hover,
.btn:hover {
  filter: brightness(1.05);
}

/* Hide honeypot field */
.hidden,
.hp-wrap {
  display: none !important;
  visibility: hidden;
  height: 0;
  width: 0;
  overflow: hidden;
  position: absolute;
  left: -9999px;
}
