/* ===== 表单 ===== */
.form-group { margin-bottom: 18px; }

/* 列设置拖拽 */
.dash-col-item {
  display: flex; align-items: center; gap: 10px;
  padding: 8px 12px; margin-bottom: 4px;
  background: #fafbfc; border: 1px solid #e8e8e8; border-radius: 6px;
  cursor: grab; user-select: none; transition: background .15s;
}
.dash-col-item:hover { background: #e6f7ff; }
.dash-col-item.dragging { opacity: 0.4; }
.dash-col-item.drag-over { border-color: #1890ff; background: #e6f7ff; }
.dash-col-item .drag-handle { color: #bbb; font-size: 16px; cursor: grab; }
.dash-col-item label { flex: 1; cursor: pointer; font-size: 14px; }
.dash-col-item input[type="checkbox"] { width: 16px; height: 16px; cursor: pointer; accent-color: #1890ff; }
.form-group label {
  display: block;
  margin-bottom: 6px;
  font-size: 13px;
  color: var(--text-secondary);
  font-weight: 500;
}
.form-group input, .form-group select, .form-group textarea {
  width: 100%;
  padding: 10px 14px;
  border: 1px solid var(--border);
  border-radius: 6px;
  font-size: 14px;
  transition: var(--transition);
  background: #fafbfc;
}
.form-group input:focus, .form-group select:focus, .form-group textarea:focus {
  outline: none;
  border-color: var(--primary);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(24,144,255,0.1);
}
.form-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 18px;
}
.form-inline { display: flex; gap: 10px; align-items: flex-end; }
.form-inline input, .form-inline select { padding: 9px 14px; border: 1px solid var(--border); border-radius: 6px; font-size: 14px; transition: var(--transition); background: #fafbfc; }
.form-inline input:focus, .form-inline select:focus { outline: none; border-color: var(--primary); background: #fff; box-shadow: 0 0 0 3px rgba(24,144,255,0.1); }
