/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
.form-control,
.form-select {
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  padding: 0.75rem 1rem;
  font-size: 1rem;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
  color: var(--dark);
}

.form-control:focus,
.form-select:focus {
  border-color: var(--primary);
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  color: var(--dark);
}

.form-label {
  font-weight: 500;
  margin-bottom: 0.5rem;
}

.form-floating > .form-control,
.form-floating > .form-select {
  height: calc(3.5rem + 2px);
  padding: 1rem 0.75rem;
}

.form-floating > textarea.form-control {
  height: auto;
  min-height: 150px;
}

.form-floating > label {
  padding: 1rem 0.75rem;
}

/* Alerts for forms */
.c-alert {
  display: none;
  padding: 15px;
  border-radius: 4px;
  margin-top: 20px;
  font-weight: 500;
  transition: all 0.3s ease;
}

.c-alert--show {
  display: block;
  animation: fadeIn 0.5s;
}

.c-alert--success {
  background-color: rgba(25, 135, 84, 0.1);
  color: #198754;
  border: 1px solid rgba(25, 135, 84, 0.2);
}

.c-alert--error {
  background-color: rgba(220, 53, 69, 0.1);
  color: #dc3545;
  border: 1px solid rgba(220, 53, 69, 0.2);
}
