.form-group { display: flex; flex-direction: column; gap: 6px; }
.form-label { font-size: 13px; font-weight: 600; color: var(--color-text); }
.form-input, .form-select {
  width: 100%; padding: 9px 12px; border: 1px solid var(--color-border);
  border-radius: var(--radius-sm); font-size: 14px; color: var(--color-text);
  background: var(--color-surface); outline: none; transition: border-color var(--transition), box-shadow var(--transition);
}
.form-input::placeholder { color: var(--color-text-muted); }
.form-input:focus, .form-select:focus {
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(99,102,241,0.12);
}
.password-wrapper { position: relative; }
.password-wrapper .form-input { padding-right: 40px; }
.password-toggle {
  position: absolute; right: 4px; top: 50%; transform: translateY(-50%);
  background: none; border: none; cursor: pointer; padding: 6px;
  color: var(--color-text-muted); display: flex; align-items: center; justify-content: center;
  transition: color var(--transition);
}
.password-toggle:hover { color: var(--color-text-secondary); }
.password-toggle svg { width: 18px; height: 18px; }
.eye-hidden { display: none; }

.search-input { padding-left: 36px; }
.search-wrapper { position: relative; flex: 1; min-width: 180px; }
.search-wrapper svg {
  position: absolute; left: 12px; top: 50%; transform: translateY(-50%);
  width: 16px; height: 16px; color: var(--color-text-muted); pointer-events: none;
}
.toolbar { display: flex; gap: 8px; align-items: center; margin-bottom: 16px; flex-wrap: wrap; }
.toolbar .form-select { width: auto; min-width: 130px; }

@media (max-width: 1024px) {
  .toolbar { flex-direction: column; align-items: stretch; }
  .toolbar .search-wrapper,
  .toolbar .form-select,
  .toolbar .btn { width: 100%; min-width: 0; }
  .toolbar .search-input { width: 100%; }
}
