/* ============================================================
   COMPONENT: Forms
   ============================================================ */

.form-group {
  margin-bottom: 20px;
}

.form-label {
  display: block;
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-mid);
  margin-bottom: 8px;
}

.form-label .required {
  color: var(--danger);
  margin-left: 3px;
}

.form-input {
  width: 100%;
  padding: 13px 16px;
  border: 1.5px solid var(--border);
  border-radius: var(--radius);
  font-size: 0.95rem;
  color: var(--text-dark);
  background: var(--white);
  transition: var(--transition);
  outline: none;
}

.form-input:focus {
  border-color: var(--gold);
  box-shadow: 0 0 0 3px rgba(201,168,76,0.12);
}

.form-input::placeholder {
  color: var(--text-muted);
}

.form-input:disabled {
  background: var(--body-bg);
  cursor: not-allowed;
  opacity: 0.7;
}

/* Textarea */
.form-textarea {
  resize: vertical;
  min-height: 100px;
}

/* Helper / error text below input */
.form-helper {
  font-size: 0.78rem;
  color: var(--text-muted);
  margin-top: 6px;
}

.form-error {
  font-size: 0.78rem;
  color: var(--danger);
  margin-top: 6px;
}

/* Input with icon */
.input-group {
  position: relative;
}

.input-group .form-input {
  padding-left: 44px;
}

.input-group .input-icon {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--text-muted);
  pointer-events: none;
}

/* Copy button inside input */
.input-copy-wrap {
  position: relative;
}

.input-copy-wrap .form-input {
  padding-right: 90px;
  font-family: 'Courier New', monospace;
  font-size: 0.85rem;
}

.input-copy-btn {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
}
